0

我有一个问题,我必须创建一个带有 ASP Classic 页面的 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

我无法考虑替换所有字符,因为在提取所有客户端之前我不知道它们...我需要一些解决方法...

4

1 回答 1

3

� 表示您的浏览器无法识别该字符,因此请替换。一个例子是“智能引号”(弯引号),某些应用程序(如 MS Word)替代了海峡引号。默认字符编码为 ISO-8859-1。

如果您不希望这些显示,您有 2 个选择。您可以删除它们,您可以尝试找到适当的替换。

无论哪种方式,首先您必须识别所有导致�的字符。为此,您必须检查每个字符并将其与以下列表进行比较:http: //www.ic.unicamp.br/~stolfi/EXPORT/www/ISO-8859-1-Encoding.html

一旦你确定了坏字符,你可以选择删除它,或者一旦你弄清楚它们应该是什么,你可以将它们更改为它们应该是什么。例如,智能引号编码为 147 和 148,因此您可以将这两个引号都更改为海峡引号 (")。如果您进行搜索,您可能会发现一些代码最多(如果不是全部)这是给你的。

于 2013-06-14T18:55:14.377 回答