【发布时间】:2018-03-20 16:45:26
【问题描述】:
我有一个 std::string 填充扩展 ASCII 值(例如 čáě)。我需要对这个字符串进行 URL 编码,以便 JavaScript 使用DecodeURIComponent 进行解码。
我尝试将其转换为 UTF-16,然后通过 windows-1252 代码点转换为 UTF-8,但由于没有足够的示例用于 MultiByteToWideChar 和 WideCharToMultiByte 函数,因此无法这样做。
我在 Windows 10 64 位上使用 MSVC-14.0 进行编译。
如何至少遍历最终 UTF-8 字符串的各个字节以进行 URL 编码?
谢谢
【问题讨论】:
-
扩展 ASCII 意义不大。文本使用一种特定的字符编码进行编码,要么一直使用相同的字符(几乎总是首选),要么是操作系统/用户/进程/线程的当前字符。那么它在你的程序中是什么? (如果您的程序使用字符串文字,那么答案就是您告诉编译器用作目标字符集的那个。)
标签: javascript c++ windows urlencode extended-ascii