问题标签 [big5]

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 回答
285 浏览

windows - 是否可以从另一个进程更改正在运行的控制台的代码页?

我有一个需要在代码页 950 中运行的遗留命令行工具。问题是该工具在运行时会自行将代码页更改为 437,无论原始代码页是什么。

我想知道是否可以从另一个进程更改正在运行的控制台的代码页?或者是否可以禁止控制台更改其代码页?

我没有该工具的源代码。以上方法是我能想到的唯一解决方案。

有什么建议么?

0 投票
1 回答
770 浏览

python-3.x - Python 3 无法使用 big5 解码 \xBD\xC6\xBB\x73

我正在从数据库中读取 SQLASCII 字符串,并且遇到了一些基于我声明的 big5 编码未正确解码的字节。下面是简化的问题。python的big 5编码表似乎不知道如何解码这两个字符。据我所知(我不是专家),这些都是有效的汉字,因为我可以使用 Notepad++ 并更改编码以将它们显示为汉字。我将它们在 Notepad++ 中的样子与这个网站进行了比较,字符匹配,所以我假设它们是 big5 编码表的有效字节。

http://ash.jp/code/cn/big5tbl.htm

b'\xbd\xc6\xbbs' 4

回溯(最后一次调用):文件“qtest1.py”,第 15 行,in print(by.decode('big5')) 文件“C:\Python32\lib\encodings\cp1252.py”,第 19 行,in编码返回 codecs.charmap_encode(input,self.errors,encoding_table)[0] UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-1: character maps to

非常感谢任何帮助...

0 投票
2 回答
446 浏览

c# - XMLRead.Create(new StringReader) 是否提供读取非 unicode (BIG5) 的功能?

我正在尝试访问具有 BIG5 编码段落的网页。检索 xml 数据后,我使用 XMLRead.Create(new StringReader(xmldata)) 并从 XmlNodeType.Text 类型的 reader.Value 中获取 big5 个字符。在 WP 运行时,它不支持 BIG5 编码,所以我必须获取每个字节并转换为 unicode 以便在 WP7 上显示。但是,我从 reader.Value 获得的字节似乎不是我所期望的。例如,第一个汉字是 B5E1。但我得到了FDFD。那是怎么回事?

要加载的网页是http://feeds.feedburner.com/nownews/politic

我正在使用 VS2010 进行 WP7 开发工作。

任何帮助表示赞赏!

0 投票
1 回答
648 浏览

c# - 在 Windows Phone 上使用 XmlReader 读取 BIG5 编码数据

我正在尝试从此处链接获取 XML 内容。然后获取“item”元素的内容以显示在屏幕上。这是 WP7 上的一种 RSS 阅读器。问题是当我检查内容时,字节似乎已经用不同的编码方式修改(翻译)了,应该使用 BIG5 但不是。但是,本机浏览器确实显示了那些 BIG5 编码字符。不知道他们是怎么得到的。

我试过这个

而且我尝试按照 Jesse 的建议使用 EncodingGenerator,但这不起作用,因为它不支持多字节编码。

0 投票
1 回答
166 浏览

c# - 如何使用 C# 从 Windows 7 en-US 上的 Big5 Jet 数据库中查询表?

我有一个非常旧的 Big5 Jet 数据库,我想将其转换为 Unicode 和 SQLite。

这里的第一步是实际打开 jet 数据库。使用 C# ADO,我可以枚举 Jet DB 中的表。它们都是乱码,这是我在 Windows 7 en-US 上所期望的。

现在,如果我简单地将这些表名放入一个简单的

jet 数据库抱怨它如何找不到表。同样,如果我尝试将 jet 数据库加载到 Microsoft Access 2010 中,它可以看到表但不能从中查询。

经过一段时间的努力,我决定启动数据库的原始主机 Windows XP zh-tw,它支持 Big5/Code Page 950。

我将完全相同的失败二进制文件从 Windows 7 zh-tw 扔到 Windows XP zh-tw 中。我运行exe并繁荣,它能够查询表没问题。

我真的很想能够在 Windows 7 上做到这一点,而且我也很想在不依赖宿主文化的情况下做到这一点。

我尝试过但失败的事情:

  • 将线程区域性更改为实例化 jet db 对象的线程的 zh-tw。
  • 在 ADO 源字符串上指定区域设置:

    jet 数据库也有自己的线程池,但我不知道如何访问这些线程来改变他们的文化。

我可以在 Windows 7 en-US 上从该数据库中查询表吗?

0 投票
1 回答
1381 浏览

encoding - 在 Unix 中将 ASCII 转换为 BIG5 编码

我们可以从 ASCII 更改为 BIG5 吗?

实际上,我必须从 ASCII 格式生成 BIG5 格式的文件,但我无法找到更改文件编码的方法。我在这里创建的文件包含中文数据,它不以 ASCII 格式显示,只能以 BIG5 格式显示。所以一旦我创建了一个 ASCII 文件,我需要将其转换为 BIG5。所以这就是为什么我需要它转换为 BIG5。

0 投票
1 回答
1691 浏览

ios - iOS:检测文件编码的最佳方法是什么

在某些情况下,我确实需要在读取文件时知道文件的编码。有时我们可以按照Apple 的字符串编程指南建议的那样做:

读取未知编码的数据

如果您发现自己使用未知编码的文本,最好确保有一种机制可以纠正不可避免的错误。例如,Apple 的 Mail 和 Safari 应用程序具有编码菜单,TextEdit 允许用户使用明确指定的编码重新打开文件。

如果您被迫猜测编码(并注意在没有明确信息的情况下,这是猜测):

  1. 尝试 stringWithContentsOfFile:usedEncoding:error: 或 initWithContentsOfFile:usedEncoding:error: (或基于 URL 的等效项)。

    这些方法尝试确定资源的编码,如果成功则通过引用返回使用的编码。

  2. 如果 (1) 失败,请尝试通过指定 UTF-8 作为编码来读取资源。

  3. 如果 (2) 失败,请尝试适当的传统编码。

    这里的“适当”取决于具体情况;它可能是默认的 C 字符串编码,可能是 ISO 或 Windows Latin 1,或其他,取决于您的数据来自何处。

  4. 最后,您可以从 Application Kit 中尝试 NSAttributedString 的加载方法(例如 initWithURL:options:documentAttributes:error:)。

    这些方法尝试加载纯文本文件,并返回使用的编码。它们可以用于或多或少的任意文本文档,如果您的应用程序在文本方面没有特殊专业知识,则值得考虑。它们可能不适用于非自然语言文本的基础级工具或文档。

在这里我遇到了一些问题。有时我可以知道错误。例如,当我使用 UTF8 方式读取 GB2312 编码文件时,我会得到 nil,所以我知道错误。但是当我使用 BIG5 方式读取 GB2312 编码文件时,我无法知道错误。

NSAttributedString 的 init 方法可能在 Mac 上可以工作,但是到了 iOS 就需要 iOS7,不太好。

我也在cocoabuilder 上搜索它并找到一些关于它的讨论,但也在 Mac 上。那么在 iOS 上呢?

0 投票
0 回答
590 浏览

python - 如何将字节从字符串格式化为十六进制值

我正在阅读带有 big5 编码字符的二进制文件。当我读取一个双字节序列时,它们会显示为一个字节列表,例如

如果我修改这些字符串字节:

所以它们显示为:

但 big5_str 实际上在字符串中仍有转义符 '\':

如果我使用 big5 解码,我只会得到相同的字符串(由于双反斜杠):

如果我将字节序列显式编码为十六进制值:

我的问题是,如何读取这些字节,将它们格式化为 '\x**' 格式化它们,以便使用非转义反斜杠将它们识别为字节,而不是字符串?

0 投票
1 回答
709 浏览

javascript - 如何提交数据转换为 Big5 的表单

所以我有一个页面,并尝试提交一个表单以及用户输入的数据。

演示:http: //jsfiddle.net/DerekL/Cck8Q/

但是,浏览器以 UTF-8 格式发送数据,而服务器要求它采用 Big5 格式。基本上这意味着,

这没有使用正确的字符集,正确的字符串应该是

无论如何“让”浏览器使用 Big5 发送数据?JavaScript 转换确实是可能的,但最终会是这样

0 投票
0 回答
359 浏览

javascript - 更改 $.ajax 中的字符集?

我需要使用字符集 Big-5 将数据发送到服务器,但是浏览器似乎只将数据编码为 UTF-8。如果我要制作一个表格,那么它可以通过以下属性实现:

但是,我想通过 XHR 发送数据。一些答案表明contentType可以让我改变它。但是根据 jQuery 的文档,编码不能被覆盖:(至少在 Chrome 中是这样。)

W3C XMLHttpRequest 规范规定字符集始终为 UTF-8;指定另一个字符集不会强制浏览器更改编码。

有没有办法绕过它?