最近发帖老是沉, 甚至0回复我想读取一个byte[]数组, 然后写到txt文件中
int stationid = listStationInfo[i].StationId;
FileStream fs = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "txt\\T" + stationid + ".txt", FileMode.Create, FileAccess.Write, FileShare.Read);
BinaryWriter br = new BinaryWriter(fs,Encoding.GetEncoding("GB2312"));
//StreamWriter sr = new StreamWriter(fs, Encoding.GetEncoding("GB2312"));
if (buf[3] ==13)
{
br.Write("KT ");
br.Write(buf[1].ToString().PadLeft(3, Convert.ToChar("0")));
br.Write(0x0d0a);//换行
br.Write(buf,8,buf[5]-2);
}
br.Close();
fs.Close();理想的输出是这样的但是 事实确实这样的, 乱码这是怎么回事呢
int stationid = listStationInfo[i].StationId;
FileStream fs = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "txt\\T" + stationid + ".txt", FileMode.Create, FileAccess.Write, FileShare.Read);
BinaryWriter br = new BinaryWriter(fs,Encoding.GetEncoding("GB2312"));
//StreamWriter sr = new StreamWriter(fs, Encoding.GetEncoding("GB2312"));
if (buf[3] ==13)
{
br.Write("KT ");
br.Write(buf[1].ToString().PadLeft(3, Convert.ToChar("0")));
br.Write(0x0d0a);//换行
br.Write(buf,8,buf[5]-2);
}
br.Close();
fs.Close();理想的输出是这样的但是 事实确实这样的, 乱码这是怎么回事呢
你有没有考虑过自己提问的方式是否有问题?
try:Regex.Unescape()
string text = File.ReadAllText("文件名",Encoding.正确的Encoding);