最近做了一个项目,是考勤机进行下发档案的操作。从数据库取数据写入文本文件 再 下发到设备中。
但是遇见了乱码的问题。现在已解决 记录一下 方便以后查看
StreamWriter sw = new StreamWriter(AppDomain.CurrentDomain.BaseDirectory + "empdow.wts", false, Encoding.UTF8);
sw.WriteLine("#WDDA$,xh,bh-编号,xm-姓名,kh,mm,gl,sr,zw,zp,mj-1");
这样写的结果是 文本文件会以 UTF8的编码输出,打开文件的查看 没有出现乱码的情况,但是导入到设备中会出现严重的乱码问题,所以从编码处入手解决问题
查询资料后 ( 参考资料“https://bbs.csdn.net/topics/100106549 ”) 发现 使用 ‘gb2312’ 编码格式可以解决问题
即 在上方代码中 加多一行 Encoding code = Encoding.GetEncoding(“gb2312”);
并把 Encoding.UTF8 替换 code 中的参数。 就是讲编码格式 换成gb2312 即可解决问题。
问题解决 记录一下 让自己以后少走一些弯路。