gpt4 book ai didi

unicode - 经典 ASP : How to write unicode string data in classic ASP?

转载 作者:行者123 更新时间:2023-12-02 10:01:34 25 4
gpt4 key购买 nike

如何在经典 ASP 网页中显示存储 unicode 数据(使用 zawgyi1 字体输入)的 nvarchar 列?

当我检索值并将其写入页面时,它显示“??????”。我使用以下元标记将 ASP 页面的内容类型设置为 UTF-8:

<META http-equiv="Content-Type" content="text/html; charset=UTF-8">

不幸的是,文本仍然呈现为“??????”。

关于如何在经典 ASP 页面中显示 unicode 值有什么建议或想法吗?

最佳答案

Content-Type 元 header 通知浏览器将发送的内容视为 UTF-8 编码的文本流。它不能确保发送的流实际上是 UTF-8。要正确处理 UTF-8,您需要做 3 件事:-

  1. 确保您的静态内容以 UTF-8 兼容编码保存。
  2. 确保您的动态内容编码为 UTF-8。
  3. 通知客户端内容是 UTF-8 编码的。

第 1 项要求您将 ASP 文件实际保存为 UTF-8 编码文件,或者文件中的所有静态内容都在 ASCII 字符范围 (0-127) 内。请注意,如果保存为 UTF-8,则所有服务器端脚本都必须使用 ASCII 字符范围内的字符。在 Visual Studio 中,您可以通过“将文件另存为...”,然后单击“保存”按钮上的小箭头来完成此操作。

第 2 项 要求 Response.CodePage属性设置为 UTF-8 代码页 65001,您可以在代码中或通过添加属性 CODEPAGE=65001 来完成此操作到<%@ %> ASP 文件第一行的声明。如果您在代码中执行此操作,则必须在调用 Response.Write 之前设置它。并且:不要使用 chr 或 asc 函数(使用 65001 时这些函数会出现问题),而是使用 chrw 和 ascw。

第 3 项要求 Content-Type header 包含 charset=UTF-8预选赛。正如您已经所做的那样,您可以使用 META header 来执行此操作。就我个人而言,我发现这有点困惑,我更喜欢使用 Response.Charset = "UTF-8"在代码中。这将限定符置于 true Content-Type 上。 HTTP header 。

关于unicode - 经典 ASP : How to write unicode string data in classic ASP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1856239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com