问题标签 [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 投票
1 回答
910 浏览

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

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

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

0 投票
1 回答
213 浏览

encoding - Base 64 如何处理末尾为零的二进制数据

据我了解规范,Base64 编码器

a) 获取源二进制文件,并用零填充为 24 字节长的倍数。

b) 然后它一次将 6 位转码为 64 个字符的目标集(A..Z、a..z、0..9、+、-)。如果它发现最后两个字节(16 位)已被零填充,则最后两个字符被转码为“==”。如果它发现最后一个字节(8 位)已被零填充,则最后一个字符被转码为'='。

我的问题是,在步骤 (b) 中,它如何知道最后一个字节是零,因为它们已被填充,而它们是零,因为它们是有效二进制源数据的一部分?

负责 (b) 部分的子系统是否必须知道 (a) 部分期间发生了什么?

0 投票
6 回答
4849 浏览

c# - ProtectedData.Protect 间歇性故障

我正在编写密码加密例程。我写了下面的应用程序来说明我的问题。大约 20% 的时间,此代码按预期工作。其余时间,解密会引发加密异常——“数据无效”。

我相信问题出在加密部分,因为解密部分每次都一样。也就是说,如果加密例程产生一个解密例程可以解密的值,它总是可以解密它。但是,如果加密例程产生一个阻塞解密例程的值,它总是阻塞。所以解密程序是一致的;加密例程不是。

我怀疑我对 Unicode 编码的使用不正确,但我尝试过其他人的结果相同。

我究竟做错了什么?

0 投票
1 回答
2204 浏览

windows - 为什么 Windows 命令提示符与批处理文件的编码之间存在差异?

例如,假设我有一个名为的批处理文件'test.cmd',它只包含:

我可以直接从命令提示符调用它,结果是打印'test.cmd some¬arg'了字符串。'some¬arg'

但是,如果我将相同的调用放在第二个批处理文件中,'tester.cmd'为了参数而调用,并且我从命令提示符调用它,结果'some%arg'是打印了字符串。

是什么弄乱了编码,我该如何解决?我确定我以前解决过这个问题,但我不记得是如何...

谢谢!

0 投票
3 回答
1443 浏览

c# - 如何在 C# 中针对流安全地创建 XPathNavigator?

给定一个 Stream 作为输入,我如何安全地创建一个针对 XML 数据源的 XPathNavigator?

XML 数据源:

  • 可能包含需要删除的无效十六进制字符。
  • 可能包含与文档声明的编码不匹配的字符。

例如,云中的某些 XML 数据源将声明编码为utf-8,但实际编码为windows-1252ISO 8859-1,这可能会导致在创建 XmlReader 时抛出无效字符异常流。

来自StreamReader.CurrentEncoding属性文档:“当前阅读器使用的当前字符编码。在第一次调用 StreamReader 的任何 Read 方法后,该值可能不同,因为在第一次调用 Read 方法之前不会进行编码自动检测。 " 这似乎表明可以在第一次读取后检查 CurrentEncoding,但是当我们需要将 XML 数据写入 Stream 时,我们是否会卡住存储此编码?

我希望找到一种最佳实践,针对 XML 数据源安全地创建 XPathNavigator/IXPathNavigable 实例,该数据源将优雅地处理编码无效字符问题(最好在 C# 中)。

0 投票
3 回答
618 浏览

encoding - 代码页和编码

在有人建议我对此进行谷歌搜索之前,我有。我只需要更清楚地了解哪些代码页和编码。

如果我使用 UTF8 编码,并使用意大利代码页和法语代码页,这是否意味着即使字节没有改变也会得到不同的字符?

0 投票
1 回答
2582 浏览

encoding - 在 Perforce 中如何处理文件类型更改?

当您将文件添加到 Perforce 时,它​​会尝试确定文件的类型(文本、二进制、utf16 等)。它在这方面做得很好,但显然在最初提交给版本控制后不再检查文件类型。一位同事最近对将其转换为 Unicode (utf16) 的文本文件进行了更改。Perforce 无法识别这一点,仍然认为它是text类型,因此当其他人检索该文件时,它已损坏。

我们通过重新提交文件并将文件类型显式更改为utf16来解决问题,但如果这会自动发生,我们会更喜欢。有一些方法可以强制它始终使用某种编码类型,但我不知道我是否喜欢这个想法。有没有人处理过这个问题并找到了解决方案?

0 投票
3 回答
1254 浏览

java - SAX 解析器中断 ñ

我通过扩展默认处理程序在 Java 中实现了 SAX 解析器。XML 在其内容中有一个ñ。当它击中这个角色时,它会破裂。我在字符方法中打印出 char 数组,它只是以 ñ 之前的字符结束。解析器似乎在此之后停止,因为即使还有更多内容,也没有调用其他方法。即 endElement 方法不再被调用。有没有人遇到过这个问题或对如何处理有任何建议?

0 投票
3 回答
5860 浏览

java - 处理 UTF-8 编码

我们有一个在 Weblogic 服务器上运行的 Java 应用程序,它从 JMS 或 MQ 队列中提取 XML 消息并将其写入另一个 JMS 队列。应用程序不会以任何方式修改 XML 内容。我们使用 BEA 的 XMLObject 来读取消息并将消息写入队列。

XML 消息包含编码类型声明为 UTF-8。

当 XML 包含超出正常 ASCII 范围的字符(例如 £ 符号)时,我们会遇到问题。当从队列中读取消息时,我们可以看到 £ 符号是完整的,但是一旦我们将其写入目标队列, £ 符号就会丢失并被替换为 £。

我检查了操作系统级别设置(区域设置),一切似乎都很好。我还应该检查什么以确保不会发生这种情况?

0 投票
5 回答
1215 浏览

c# - .NET:将 .doc 转换为 .htm 会产生时髦的字符

我使用 MS Word 自动化将 .doc 保存到 .htm。如果 .doc 文件中有项目符号字符,它们会很好地保存到 .htm,但是当我尝试将 .htm 文件读入字符串时(因此我可以随后将其发送到数据库以作为字符串进行最终存储,而不是blob),项目符号会根据用于加载到字符串中的编码转换为问号或其他字符。

我正在使用它来阅读文本:

我也尝试过使用 StreamReader,但得到了相同的结果(可能是 File.ReadAllText 在内部使用的)。

我还尝试在 File.ReadAllText 的第二个重载中指定每种类型的编码:

我已经尝试了 Encoding 类型的所有可用枚举。

有任何想法吗?