问题标签 [character-encoding]

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 投票
4 回答
140771 浏览

c++ - 你如何正确使用 WideCharToMultiByte

我已阅读有关WideCharToMultiByte的文档,但我坚持使用此参数:

我不太确定如何正确初始化变量并将其输入函数

0 投票
23 回答
25037 浏览

unicode - 寻找 UTF-8 文本编辑器

我正在寻找一个(简单的)文本编辑器,它可以处理同一文档中不同编码的文本。

我需要开发一些日文和英文混合文本的网站,而我现在拥有的编辑器(在英文 Windows 系统上)无法显示日文文本。Jedit 文件不显示我输入的日语文本,但是当我在浏览器中查看该文件时,它会正确显示。Gvim 将编辑器中的所有日文文本显示为问号,也在浏览器中显示。在 Gvim 中输入汉字的工作(你输入发音,然后按空格键来获取汉字)但是当你确认你想要的汉字时,它会用问号替换那个汉字。(每个汉字1个问号)。

有人可以推荐我一个文本编辑器来编辑能够显示 utf-8 编码文本并保存为 utf-8 文件的 html 和 php 文件吗?

谢谢你。

在阅读了有关 emacs 的信息后,我安装了它。见下文。

谢谢大家的提示。如果您还没有 unicode 字体,则必须在网上找到一种或购买一种。这是在 Windows 系统上安装字体的说明http://support.microsoft.com/kb/314960

jEdit 我将 Jedit 中的字体更改为 UTF 字体,现在日文显示正常。输入日语仍然有问题,因为您看不到您在输入什么。(要更改字体以编辑文件,请转到实用程序 -> 全局选项 -> 文本区域选择 Unicode 字体,您将能够看到日文字符。

gVim 我仍在试图弄清楚如何在 gvim 中添加字体。一旦我知道该怎么做,我会更新这个。

Emacs Emacs 不能正确显示汉字,它们显示为 ??? 但至少我可以看到我用日语输入的内容并选择正确的单词。

所以此时我不得不说,在 jEdit 中我可以看到日文文本,但我无法输入日文文本。Gvim 我可以输入日文文本,但在文本区域内显示为 ??? Emacs 也是如此。遗憾的是,在 emacs 和 gvim 中添加字体并非易事。目前,我使用带有 Arial unicode MS 字体的记事本并保存为 UTF-8 文件作为我的日语编辑器。不理想,但至少它有效。

0 投票
4 回答
118334 浏览

java - java中的编码转换

是否有任何免费的 java 库可用于将一种编码中的字符串转换为另一种编码,例如iconv?我正在使用 Java 1.3 版。

0 投票
9 回答
145564 浏览

html - 问号字符显示在文本中。为什么是这样?

我有一个备份服务器,可以自动备份我的实时站点,包括文件和数据库。

在实时站点上,文本看起来不错,但是当您查看它的镜像版本时,它会显示“?” 在一些文本中。此文本存储在新闻数据库表中。

这是它在实时服务器上和镜像服务器上的屏幕截图。

在将其备份到镜像服务器的过程中会发生什么?

替代文字

实时服务器是Solaris,镜像服务器是 Linux Red Hat Linux 5。

0 投票
1 回答
910 浏览

ruby-on-rails - 如何在 Rails 应用程序中使用 SQL_ASCII 编码?

我必须连接到具有ENCODING = 'SQL_ASCII';的旧版 postgres 数据库。.

如何在我的 Rails 应用程序中设置此编码?

0 投票
8 回答
2186 浏览

c# - 你怎么能在网页中编辑有效的 XML?

我必须启动并运行一个快速而肮脏的配置编辑器。流程是这样的:

配置(服务器上的 POCO)被序列化为 XML。
在这一点上,XML 格式良好。配置被发送到 XElements 中的 Web 服务器。
在 Web 服务器上,XML(是的,全部)被转储到文本区域中进行编辑。
用户直接在网页中编辑 XML 并单击提交。
在响应中,我检索了 XML 配置的更改文本。此时,所有转义都已通过在网页中显示它们的过程恢复。
我尝试将字符串加载到 XML 对象(XmlElement、XElement 等)中。卡布姆。

问题是序列化会转义属性字符串,但这会在翻译过程中丢失。

例如,假设我有一个具有正则表达式的对象。这是 Web 服务器的配置:

所以,我把它放到了一个 textarea 中,对用户来说它看起来像这样:

因此,用户进行了轻微的修改并将更改提交回来。在 Web 服务器上,响应字符串如下所示:

因此,用户添加了另一个验证器,现在两者都具有非法字符的属性。如果我尝试将其加载到任何 XML 对象中,它会引发异常,因为 < 和 & 在文本字符串中无效。I CANNOT CANNOT CANNOT CANNOT 不能使用任何类型的编码功能,因为它编码了整个血腥的东西:

var 结果 = Server.HttpEncode(editedConfig);

结果是

这不是有效的 XML。如果我尝试将它加载到任何类型的 XML 元素中,我将被落下的铁砧击中。我不喜欢坠落的铁砧。

所以,问题仍然存在......我可以让这个字符串 XML 准备好解析为 XML 对象的唯一方法是使用正则表达式替换吗?加载时有什么方法可以“关闭约束”吗?你怎么解决这个问题???


最后一个回复,然后对其进行维基化,因为我认为没有有效的答案。

我放在 textarea 中的 XML 是有效的、转义的 XML。1) 将其放入文本区域 2) 将其发送到客户端 3) 将其显示给客户端 4) 提交其所在的表单 5) 将其发送回服务器和 6) 从表单中检索值的过程任何和所有的逃避。

让我再说一遍:我没有逃避任何事情。只需在浏览器中显示它就可以了!

需要考虑的事情:有没有办法从一开始就防止这种无法逃脱的事情发生?有没有办法获取几乎有效的 XML 并以安全的方式“清理”它?


这个问题现在有一个赏金。为了收集赏金,您演示了如何在浏览器窗口中编辑 VALID XML,而无需使用不需要我使用正则表达式手动转义属性值的第 3 方/开源工具,也不需要用户转义他们的属性,并且在往返时不会失败(&amp;amp;amp;etc;)

0 投票
1 回答
14923 浏览

character-encoding - 如何查找数据库使用的字符集

我可以从 .NET 程序(使用 ODBC)或通过数据库管理工具(用 Java 编写)访问数据库。

如果我从 .NET 程序将“é”字符写入数据库,则它在数据库管理工具中显示为“Õ”(带有波浪号的大写 O)。

如果我从 DB 管理工具向数据库写入一个“é”字符,它在 .NET 程序中显示为“Å”(大写 A,顶部有一个圆圈)。

我并没有试图真正解决问题(即让两个程序显示相同的东西),尽管那会很好。我只是想猜测每个字符集用于解释数据,以便如果我使用 .NET 转储数据并使用该工具重新输入数据,我可以自己进行转换。

那么,2 个字符集的哪个组合会导致上述字符不匹配?

谢谢你的帮助。

编辑:使用 Sybase ASE 12.5

编辑:基本上问题是:你知道一个字符编码,它的 E9 代码点代表字符'Õ'(大写 O 和波浪号)或'Å'(大写 A,顶部有一个圆圈)?(这假设其中一个使用的是拉丁语 1,因此是 E9,我认为这很可能)

编辑:保罗的解决方案做到了。关于字符集的答案是:hp-roman8

0 投票
4 回答
5788 浏览

unicode - HtmlEncode UTF-8

我在 asp-classic 中的 utf-8 字符串上使用 Server.HtmlEncode,它可以正常工作,直到字符串中有一些重音符号,例如 Rüstü Recber,它显示为 Rüstü Recber (Rüstà ;¼ 来源中的 Recber)。

我尝试将 Response.Charset 属性设置为 utf-8 但这没有任何区别。

0 投票
8 回答
9408 浏览

java - Java 应用程序在特殊字符上失败

我正在处理的应用程序从文件中读取信息以填充数据库。文件中的某些字符是非英语字符,例如带重音的法语字符。

该应用程序在 Windows 中运行良好,但在我们的 Solaris 机器上它无法识别特殊字符并引发异常。例如,当它在“Gérer”中遇到重音 e 时,它​​会说:-

(从我们的应用程序抛出的异常)

我怀疑为了阻止这种情况发生,我需要更改 JVM 的 file.encoding 属性。我试图通过 System.setProperty() 来做到这一点,但它并没有阻止错误的发生。

对我能做什么有什么建议吗?我正在考虑将 /etc/default/init 中的 solaris 平台的基本语言环境设置为 UTF-8。有人认为这可能会有所帮助吗?

任何想法都非常感谢。

0 投票
2 回答
873 浏览

mysql - mysql字符集cli

我如何确定 mysql db 的字符集设置为什么?在cli?