【问题标题】:Encoding problem classic ASP编码问题经典ASP
【发布时间】:2008-12-01 15:53:32
【问题描述】:

我对经典 ASP 有疑问。当我使用XMLHttp.send 发送数据时,编码错误。响应是一个 PDF 文件,但是“ÆØÅ”出错了,例如“Ø”被读作“øy”。这就像从 UTF-8 到 ISO-8859-1 的转换错误,但现在应该是 ISO-8859-1。我在页面顶部有<%@CODEPAGE="28591"%>ISO-8859-1 作为XML 文件中的编码,我检查了文件,所以它是有效的ISO-8859-1。我无权访问要发送此数据的服务器,但我在一个 VB6 程序中修复了它,该程序使用相同的逻辑:

aPostBody = StrConv(strBody, vbFromUnicode)
WinHttpReq.SetTimeouts 100000, 100000, 100000, 1000000
WinHttpReq.Send aPostBody

在一个 C# 程序中也使用与

相同的逻辑
// ISO-8859-1
byte[] bytes = Encoding.GetEncoding(28591).GetBytes(data);

但在 ASP 经典中,我需要一些帮助才能找到将字符串编码更改为 ISO-8859-1 的方法。

【问题讨论】:

    标签: encoding character-encoding asp-classic


    【解决方案1】:

    试试:

    Session.CodePage = 28591
    

    有一些很好的信息here,我得到了CodePage号here

    【讨论】:

    • 太糟糕了,我不能投票两次。由于第一个链接,这个相同的答案为我解决了另一个问题。
    • 这修复了我的德语编码...结合字符集:Response.Charset = "utf-8"
    【解决方案2】:

    您是否尝试过使用Response.Charset 并将其设置为:

    <% Response.Charset="ISO-8859-1"%>
    

    【讨论】:

      【解决方案3】:

      检查 .ASP 文件和 #include 中包含的所有 .ASP 文件的编码。

      当我在 VS 中创建一个新的 .ASP 文件并以 UTF-8 编码时遇到问题。该文件被其他人包含,文件编码“覆盖”了所有其他编码命令。

      【讨论】:

      • 这是我的问题,注意这个答案。
      【解决方案4】:

      AFAIK 这是 WinHttpReq / XMLHTTPRequest 的一个已知问题,希望有人证明我错了。

      【讨论】:

        【解决方案5】:
        【解决方案6】:

        我在 ASP 和 Javascript 上都使用过这个组件,但是在 javascript 上我在这里找到了解决这个问题的方法:http://squio.nl/blog/2006/06/27/xmlhttprequest-and-character-encoding/

        【讨论】:

          【解决方案7】:

          解决办法:

          Response.AddHeader "Content-Type", "text/html;charset=UTF-8"
          Response.CodePage = 65001
          Response.CharSet = "UTF-8
          

          完成: https://pt.stackoverflow.com/questions/80886/encoding-asp-cl%C3%A1ssico/81418#81418

          【讨论】:

            【解决方案8】:

            您是否尝试过使用与您正在做的事情等效的meta 标签?

            例子:

            Response.Write("<meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1' />")
            

            注意:我使用Response.Write 粘贴吐出字符集,因为例如,如果字符集是 UTF-8,Visual Studio 将尝试使用不同的编码保存文件。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多