none
文件的编码问题... RRS feed

  • 问题

  • 在本地调用远程webservice接口上传文件,将文件已二进制数据byte[]传入,然后在webservice接口中处理:
    string bb= Encoding.GetEncoding("UTF-8").GetString(bytes);
     StreamWriter sw=new StreamWriter("e:\\"xxx.docx", false, Encoding.GetEncoding("UTF-8"));
    sw.WriteLine(bb);
    编码方式为UTF-8或GBK或gb2312,但保存后的文件打开后还是乱码,请问各位大侠该如何处理..
    I can!
    2009年11月9日 2:28

答案

  • StreamWriter应该也是可以的 但是你这里是UTF-8那么你传入的byte[] 也应该是通过utf-8取得的
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!My blog~~~
    • 已标记为答案 leo.com 2009年11月13日 5:21
    2009年11月11日 8:03
    版主
  • 我觉得需要考虑一下两点:
    1. 首先获得的字节数组应该是完整的;
    2. 如Raymond Tang 所说的,你这里是UTF-8那么你传入的byte[] 也应该是通过utf-8取得的, 前后得保持一致。

    This posting is provided "AS IS" with no warranties, and confers no rights. Microsoft Online Community Support
    • 已标记为答案 leo.com 2009年11月13日 5:20
    2009年11月11日 9:03
    版主

全部回复

  • 二进制数据使用BinaryWriter类,不是StreamWriter
    【孟子E章】
    2009年11月9日 12:55
    版主
  • StreamWriter应该也是可以的 但是你这里是UTF-8那么你传入的byte[] 也应该是通过utf-8取得的
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!My blog~~~
    • 已标记为答案 leo.com 2009年11月13日 5:21
    2009年11月11日 8:03
    版主
  • 我觉得需要考虑一下两点:
    1. 首先获得的字节数组应该是完整的;
    2. 如Raymond Tang 所说的,你这里是UTF-8那么你传入的byte[] 也应该是通过utf-8取得的, 前后得保持一致。

    This posting is provided "AS IS" with no warranties, and confers no rights. Microsoft Online Community Support
    • 已标记为答案 leo.com 2009年11月13日 5:20
    2009年11月11日 9:03
    版主