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();
}
}
}