var vsFileName = GetFileName1();//获取完整的文件路径,名称
var TristateMixed=-2;
if (vsFileName == "") 
return false;
var vsSuffix = vsFileName.substr(vsFileName.length-4);      
 if (".csv" ==vsSuffix||".txt" ==vsSuffix )
{
      var vFSO  = new ActiveXObject("Scripting.FileSystemObject");//创建FSO对象
      var vFile = vFSO.OpenTextFile(vsFileName,1,false,TristateMixed);
      var vsSerialStr = vFile.ReadLine();
      while (!vFile.AtEndOfStream)
      {
vsSerialStr += "::";
vsSerialStr += vFile.ReadLine();  
      }
}
读txt文件的时候可以正常的读出来,但是读csv文件时就老是乱码,TristateMixed,TristateFalse,TristateTrue,都是乱码.
这是怎么回事,达人赐教!

解决方案 »

  1.   

    TristateTrue
    就是unicode方式吧
      

  2.   

    改编码
    utf-8和gb2312都试试
      

  3.   

    CSV用的应该是GB2312编码,而对出来后可能是Unicode编码。你可以使用FileStream试试,在读取的时候指定为GB2312编码。
      

  4.   

    是不是你的CSV文件的做法有问题?不要用Excel生成CSV你可以将TXT文件的扩展名改成csv就可以
      

  5.   

    如WTaoboy(SnowMans) 说的,用txt文件转成csv可以导入,但是我从数据库中保存出来的csv文件还是不行,有没有一个终极的解决办法呢