C#.net 用 FileStream讀寫檔案
using System;
using System.IO;
using System.Text;
namespace FileTest
{
class FileTest
{
static void Main(string[] args)
{
byte[] byDataIn = new byte[100];
byte[] byDataOut = new byte[100];
char[] charData = new char[100];
try
{
FileStream sourceFile = new FileStream("F://source.txt", FileMode.Open, FileAccess.Read);
sourceFile.Seek(5, SeekOrigin.Begin);
sourceFile.Read(byDataIn, 0, 100); //讀取檔案
Decoder de = Encoding.UTF8.GetDecoder();
de.GetChars(byDataIn, 0, byDataIn.Length, charData, 0); //解碼,將byte轉換成char
sourceFile.Close();
}
catch (IOException e)
{
Console.WriteLine(e);
Console.ReadLine();
return;
}
try
{
FileStream targetFile = new FileStream("F://target.txt", FileMode.Open, FileAccess.Write);
targetFile.Seek(0, SeekOrigin.End);
Encoder en = Encoding.UTF8.GetEncoder();
en.GetBytes(charData, 0, charData.Length, byDataOut, 0, true); //編碼,將char轉換成byte
targetFile.Write(byDataOut, 0, byDataOut.Length); //寫入檔案
targetFile.Close(); //一定要關閉,否則不能儲存
}
catch(IOException e)
{
Console.WriteLine(e);
Console.ReadLine();
return;
}
Console.WriteLine(charData);
Console.ReadLine();
}
}
}