我有一个问题,我必须创建一个带有ASP经典页面的csv文件,从MS Access数据库获取数据,一切都非常简单,但在最终文件中我有很多奇怪的字符,显示为正方形(未知的角色方块)。我必须摆脱那些角色,但我真的不知道......你有什么想法吗?
这就是我在文件中看到的东西:M�NSTERSTRA�E
当然,我真的不知道哪些是产生问题的字符......而且它们真的很多。
这就是我写csv的方式......
dim fs,f,d
set fs = Server.CreateObject("Scripting.FileSystemObject")
set f = fs.OpenTextFile(Server.MapPath("clienti.csv"), 2, true,true)
d = ""
do while not rs1.EOF
d = ""
For Each fField in RS1.Fields
f.Write(d)
f.Write(" ")
temp = RS1(fField.Name)
if len(trim(temp)) > 0 then
f.Write(trim(temp))
end if
d = ";"
Next
f.WriteLine("")
rs1.movenext
loop
f.Close
set f = Nothing
set fs = Nothing
我无法考虑更换所有字符,因为在我提取所有客户之前我不了解它们......我需要一些解决方法...
答案 0 :(得分:3)
表示您的浏览器无法识别该字符,因此可以替代。一个例子是“智能引号”(卷曲的),一些应用程序,如MS Word,替代海峡引用。默认字符编码为ISO-8859-1。
如果您不希望这些出现,您有两个选择。你可以删除它们,你可以尝试找到合适的替代品。
无论哪种方式,首先你必须识别导致 的所有字符。为此,您必须浏览每个字符并将其与此列表进行比较:http://www.ic.unicamp.br/~stolfi/EXPORT/www/ISO-8859-1-Encoding.html
一旦识别出错误的字符,您可以选择删除它,或者一旦弄清楚它们应该是什么,就可以将它们更改为应该存在的字符。例如,智能引号被编码为147& 148,所以你可以把它们都改成海峡引号(“)。如果你进行搜索,你可能会发现一些代码可以为你做大部分(如果不是全部)。