【问题标题】:Foreign character encoding issue with CSV downloadCSV 下载的外来字符编码问题
【发布时间】:2013-10-07 13:32:12
【问题描述】:

我正在为 ASP 页面使用 UTF8 编码。我想为我的网站实现 CSV 下载功能。以下是我的回复设置

With Response
    .Buffer = true
    .Expires = 0
    .Clear
    .Charset = "UTF-8"
    .CodePage = 65001
    .AddHeader "Content-Type", "text/html;charset=UTF-8"
    .AddHeader "content-encoding", "UTF-8"
    .AddHeader "content-disposition", "attachment; filename=""AgedDebtors.csv"""
End With

为响应标头设置了编码,但我仍在生成的 CSV 中获取编码的外来字符。为此尝试了几件事,但无法做到正确。请让我知道我在这里缺少什么

【问题讨论】:

  • "我想为我的网站实现 CSV 下载功能" 对你有好处。现在,您要问的实际问题是什么?
  • @Danack:我已经特别提到了,伙计……请仔细阅读。
  • “请让我知道我在这里缺少什么”不是一个可以接受的问题。 sscce.org 与您所期望的相比,您实际上并没有说您得到了什么。 “我正在获取编码的外来字符”是一个毫无意义的短语,实际上并不能描述您所看到的内容。此外,您没有显示任何代码来说明您实际生成 CSV 文件的位置,或者它是如何发送到输出的。您要问的问题类似于“如何正确地将 CSV 发送到输出?”使用示例数据,而不仅仅是“我错过了什么”。

标签: utf-8 vbscript character-encoding


【解决方案1】:
  Set stream = CreateObject("ADODB.Stream")
  stream.Open
  stream.Type     = 2 'text
  stream.Position = 0
  stream.Charset  = "utf-8"
  stream.WriteText str

您可能希望将转换后的流保存到一个新文件中,所以写这个

  stream.SaveToFile filename, 2

并关闭流使用

  stream.Close

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-12
    相关资源
    最近更新 更多