StringBuilder text = new StringBuilder(128);
            int tt = PetroChinaHIS10_120520.Performance.PSDNMobile.BriSDKLib.QNV_Tool(PetroChinaHIS10_120520.Performance.PSDNMobile.BriSDKLib.QNV_TOOL_LOCATION, 0, "02885882015", "", text, 128);
            string str = "";把stringbuilder结果转换成ansi,不能用unicode
stringbuilder 是unicode编码的。。

解决方案 »

  1.   


      StringBuilder text = new StringBuilder(128);
                int tt = PetroChinaHIS10_120520.Performance.PSDNMobile.BriSDKLib.QNV_Tool(PetroChinaHIS10_120520.Performance.PSDNMobile.BriSDKLib.QNV_TOOL_LOCATION, 0, "02885882015", "", text, 128);
                string str = "";把stringbuilder结果转换成ansi,不能用unicode
    stringbuilder 是unicode编码的。。上面的text是StringBuilder  这是传出来的参数,现在想得到它的值,用
      MessageBox.Show(text.ToString().Trim());
    它显示的是乱码,现在就是想把它转成ANSI,就是这个意思,所以麻烦你一下。。
    用C#实现。。谢谢!!!
      

  2.   

    P/Invoke
    你看看这个吧,在dllimport的时候指定字符集或者指定参数的封送选项