输出字节缓冲区太小,无法包含编码后的数据,编码“Unicode (UTF-8)”的操作回退“Sys
tem.Text.EncoderReplacementFallback”。
参数名: bytes. static void Main(string[] args)
{
byte[] byData;
char[] charData;
try
{
//charData = "Hello".ToCharArray();
charData = "你好".ToCharArray();//用中文的字符串抛异常,英文的通过 byData = new byte[charData.Length];
FileStream aFile = new FileStream("Temp.txt", FileMode.Create);
Encoder e = Encoding.UTF8.GetEncoder();
e.GetBytes(charData, 0, charData.Length, byData, 0, true);
aFile.Seek(0, SeekOrigin.Begin);
aFile.Write(byData, 0, byData.Length);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Console.ReadKey();
}
return;
}
把一个char数组转换成byte类型数组,写进FileStream里,中文的转换过来的抛异常!
tem.Text.EncoderReplacementFallback”。
参数名: bytes. static void Main(string[] args)
{
byte[] byData;
char[] charData;
try
{
//charData = "Hello".ToCharArray();
charData = "你好".ToCharArray();//用中文的字符串抛异常,英文的通过 byData = new byte[charData.Length];
FileStream aFile = new FileStream("Temp.txt", FileMode.Create);
Encoder e = Encoding.UTF8.GetEncoder();
e.GetBytes(charData, 0, charData.Length, byData, 0, true);
aFile.Seek(0, SeekOrigin.Begin);
aFile.Write(byData, 0, byData.Length);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Console.ReadKey();
}
return;
}
把一个char数组转换成byte类型数组,写进FileStream里,中文的转换过来的抛异常!
byte[] byData;
string str= "你好!";
byData = Encoding.UTF8.GetBytes(str);
byData = new byte[charData.Length];