问题标签 [codepages]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3609 浏览

windows - 代码页 850 有效,65001 失败!对“调用 foo.cmd”没有响应。内部命令工作正常

这个问题基本上说明了问题。

我正在使用 Windows XP Pro Service Pack 3
ComSpec=C:\WINDOWS\system32\cmd.exe
我通过 Start... Run-dialog... cmd.exe 启动了控制台

这是我的控制台的“视图”:
命令,然后是输出(以及我的 // 注释)

以上工作正常(如预期)。Windows 领域的事情很开心,但是当我切换到代码页 65001 时“调用”失败

这里发生了什么(没有发生)?

0 投票
2 回答
129 浏览

character-encoding - 围绕代码页使用的术语和概念

我正在研究代码页,并且遇到了许多相互冲突的术语用法,即使在不同的维基百科条目中也是如此。我只是找不到从头到尾说明整个字符处理过程的信息来源。精通该领域的人能否提出以下信息不准确或不正确的方式:

据我了解的字符表示过程:

  • 我们从与任何特定平台无关的符号集(不确定此处的正确术语,可能是“脚本”)开始。例如,“西里尔字母”被理解为在 Windows 环境中指代与 Linux 中相同的实体。

  • 这些集合的成员通常由供应商选择成束,以形成特定于平台的字符集。平台可能会分配这些不同的代码,例如 Windows 上的 GDI 值(例如,ANSI_CHARSET 为 0,此处提到的其他代码:http ://asa.diac24.net/wiki/index.php?title=ASS:fe&printable=yes ) . 我找不到关于这些集合的太多信息,例如它们是否实际上是编码字符集,或者它们是否只是无序和抽象的。

  • 从这些集合中,开发出的各个代码页似乎与 GDI 值具有一对一的映射关系。由于这些 GDI 值似乎代表依赖于平台的集合,这是否意味着 Windows 代码页本质上是每个单独集合的编码版本?

我一直无法将这个想法与之前显示给我的链接(我已经丢失)协调起来,该链接显示了这些 GDI 字符集和跨不同平台的代码页之间的一对多映射。这是否准确,这些 GDI 值是否指向可以开发跨不同平台的不同代码页的集合?

  • 每个代码页将抽象字符集的一个成员映射到一个整数上,以表示它在集合中的位置。在上述网页上提到的“更简单”代码页的情况下,可以使用更精确的“字符映射”术语来引用这些代码页。这个术语值得考虑还是区别太微妙和不重要?

  • 如果字体包含用于该代码点的代码点,则字体将代码点解析为字形,否则报告失败。我还读到字体可能会为那些它不支持的代码点返回自己的空白字形。应用程序能否区分此空白字形和成功解析,即。字体是否会返回带有此空白字形的各种错误代码?

我相信这就是我困惑的程度。在这方面的任何澄清都是非常宝贵的。提前致谢。

0 投票
5 回答
10333 浏览

encoding - “编码”、“字符集”和“代码页”之间有什么区别?

我真的很想用这些东西变得更好。我对这样的国际化概念非常熟悉,但我需要更好地了解其背后的理论。

我读过Spolsky 的文章,但我仍然不清楚,因为这三个术语经常互换使用——即使在那篇文章中也是如此。我认为他们中至少有两个在谈论同一件事。

我怀疑有很大比例的开发人员每天都在摸索这些东西。我不想再成为那些开发人员中的一员了。

0 投票
2 回答
817 浏览

delphi - 如何设置 Delphi 2006 可执行文件的代码页

我们在 Delphi 2006 中编程,使用 Multilizer 5.1 来翻译程序。现在我们必须在 Multilizer 中添加波兰语作为新语言。但是当我们打开我们的可执行文件时,Multlizer 说“代码页不支持波兰语”。

如果我们将区域设置调整为波兰语,则每当我们打开可执行文件时,区域设置都会翻转回原始设置,即荷兰语。也许我们应该在我们的项目选项中设置 CodePage 设置,但下拉列表没有给我们任何选项。

有任何想法吗?

0 投票
1 回答
2037 浏览

python - 如何在 python 中更改 Windows 代码页?

在我将代码页设置为 65001 后,下次我调用 chcp 时,它应该说活动代码页是 65001,而不是 437。我在 windows 命令提示符下尝试了这个,它起作用了。为什么它不能通过 python 代码工作?

0 投票
2 回答
4234 浏览

unicode - 将 RTF 十六进制文字转换为 Unicode 时如何发现要使用的代码页

我正在解析由 Word 2003+ 生成的 RTF 1.5+ 文件,这些文件可能包含其他语言的内容。此内容通常编码为十六进制文字 (\'xx)。我想将这些文字转换为 unicode 值。

我通过查找 ansicpg (\ansi\ansicpg1252) 知道我的文档的代码页。

当我使用 ansicpg 代码页解码为 Unicode 时,许多语言(如法语)似乎都转换为我期望的 Unicode 字符值。

但是,当我看到俄语文本(如下所示)时,代码页 1252 会将内容解码为乱码。

\f277\lang1049\langfe1033\langnp1049\insrsid5989826\charrsid6817286 \'d1\'f2\'f0\'e0\'ed\'e8\'f6\'fb \'e1\'e5\'e7 \'ed\' e0\'e7\'e2\'e0\'ed\'e8\'ff。\'dd\'f2 \'e0 \'f1\'f2\'f0\'e0\'ed\'e8\'f6\'e0 \'ed\'e5 \'e4\'ee\'eb\' e6\'ed\'e0 \'ee\'f2\'ee\'e1\'f0\'e0\'e6\'e0\'f2\'fc\'f1\'ff \'e2 \'f2\ 'e0\'e1\'eb\'e8\'f6\'e5 \'e2 \'f1\'ee\'e4\'e5\'f0\'e6\'e0\'ed\'e8\'e8 .

我假设 lang1049、langfe1033、langnp1049 应该为我提供线索,以便我可以以编程方式为它们引用的文本选择不同的(非默认)代码页?如果是这样,我在哪里可以找到解释如何将 lang* 代码映射到代码页的信息?还是我应该寻找其他一些 RTF 命令/指令来为我提供我正在寻找的信息?(或者我必须使用 \f277 作为字体参考,看看它是否有相关的代码页?)

0 投票
1 回答
216 浏览

c++ - MySQL++ 的代码页相关问题

代码:

mysqlpp::Query acc_query = connection->query("SELECT * FROM accounts;");

以下代码产生:

_Gfirst = 0x00c67718 "从账户中选择 *;ээээ«««««««««юоюою"

就像在 Visual Studio 调试器中一样。它似乎导致我的查询失败并出现奇怪的结果。

有没有其他人遇到过?

0 投票
1 回答
109 浏览

encoding - 寻找带有严重=xC1 急性=xC2 cedilla=xD0 的单字节编码

找不到在这些位置有重音符号的代码页或其他单字节编码:

xC1 中的坟墓 xC2 中 xD0 中的尖音

0 投票
2 回答
902 浏览

windows - 每种语言版本的 Windows 的默认代码页

在哪里可以找到有关每个语言版本的 Windows 的默认代码页的信息?即每个语言版本的“ANSI”代码页。

我找到了Windows 支持的代码页,但我找不到每种语言的默认值。

我猜想,例如,Windows-1253(希腊语)是安装希腊语版本时的默认设置。但是其他代码页呢?Windows-1253 是任何其他语言版本的默认设置吗?

0 投票
1 回答
736 浏览

vb.net - VS2008 - VB.net 字体对话框 - 按代码页/语言过滤字体

更新(回应第一个答案,来自 Hans Passant):我想我没有很好地解释我的用例。此应用程序旨在让人们以“主”语言(很可能是英语,但不一定)输入数据,然后方便输入另一种语言的翻译。这一切都是通过富文本框界面完成的。

因此,无论他们想使用什么字体来输入翻译,都必须是支持他们正在翻译的语言的脚本的字体。

如果我知道“目标语言”,最好只列出支持以该语言输入文本的字体。

==================================================== =====================

我正在开发一个带有 SQL Server 后端的 VB.net 应用程序。我们将支持多种语言的富文本条目(用户接受),包括那些不是西方文字的(例如中文、日语、阿拉伯语等)

我们有一个对话框,用户可以从中选择他们想要使用的语言。对于每种语言,用户必须指定一种合适的(默认)字体,以便在应用程序的富文本框中输入该语言的任何文本。

示例:用户想要输入中文文本,因此选择“中文”作为我们应用程序中使用的语言。用户必须指定输入汉字的字体;所以我们显示一个 Windows.Forms.FontDialog。

在这个字体选择对话框中,我希望能够根据他们选择的语言的代码页(脚本)过滤可用字体列表。

例如,“Brush Script MT”字体只支持西方字符——不支持中文——所以如果用户选择输入中文文本的字体,那么“Brush Script MT”字体不应出现在列表中。

有人对如何实现这一点有任何想法吗?我已经开始使用 System.Text.Encoding 来获取本地系统正在使用的 Windows 代码页的编号 - 我走的是正确的道路吗?

谢谢你的帮助!

马特