问题标签 [multibyte]

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 投票
5 回答
27317 浏览

string - UTF8 与 UTF16 与 char* 与什么?有人给我解释一下这个烂摊子!

我已经设法几乎忽略了所有这些多字节字符的东西,但现在我需要做一些 UI 工作,我知道我在这方面的无知会赶上我!谁能在几段或更少的段落中解释我需要知道的内容,以便我可以本地化我的应用程序?我应该使用什么类型(我同时使用 .Net 和 C/C++,对于 Unix 和 Windows,我都需要这个答案)。

0 投票
3 回答
6251 浏览

pinvoke - 使用 [Out] StringBuilder / LPTSTR 和多字节字符的 P/Invoke:乱码文本?


我正在尝试使用 P/Invoke 从非托管 DLL 中获取字符串(以及其他内容),但无论我尝试什么,该字符串都会出现乱码。

我不是本地 Windows 编码器,所以我不确定字符编码位。DLL 设置为使用“多字节字符集”,我无法更改(因为这会破坏其他项目)。我正在尝试添加一个包装函数来从一些现有的类中提取一些数据。有问题的字符串当前作为 CString 存在,我正在尝试将其复制到 LPTSTR,希望将其放入托管的 StringBuilder 中。

这是我所做的,我认为是最接近正确的(显然,我已经删除了不相关的部分):




非常感谢任何提示!谢谢!!!

0 投票
5 回答
4449 浏览

php - PHP 多字节字符串函数

今天我遇到了一个php函数的问题,strpos()因为即使正确的结果显然是0,它也会返回FALSE。这是因为一个参数是用UTF-8编码的,而另一个(起源是HTTP GET参数)显然不是。

现在我注意到使用该mb_strpos功能解决了我的问题。

我现在的问题是:通常使用 PHP 多字节字符串函数来避免将来出现这些问题是否明智?我应该完全避免传统的strpos, strlen, ereg, 等等等等功能吗?

注意:我不想mbstring.func_overload在 php.ini 中设置 global,因为这会导致使用 PEAR 库时出现其他问题。我正在使用 PHP4。

0 投票
9 回答
89963 浏览

utf-8 - 什么是多字节字符集?

术语多字节是指一个字符集,其字符可以(但不必)宽于 1 个字节(例如 UTF-8)还是指在任何情况下都大于 1 个字节的字符集(例如 UTF -16) ? 换句话说:如果有人谈论多字节字符集,这意味着什么?

0 投票
2 回答
3125 浏览

php - PHP 的 md5() 的 Javascript 等价物也适用于多字节字符串?

编辑: 问题中提到的脚本,以及答案中指出的另一个脚本,都适用于多字节字符串 - 结果我的问题出在其他地方。

有谁知道这样的实现?http://phpjs.org/functions/view/469上的脚本运行良好,只是不适用于多字节字符串。

0 投票
4 回答
2401 浏览

php - 重命名不支持多字节字符

如果我写:

然后它很好并且工作。

但如果我把它改成:

它会报告

“没有这样的文件或目录...”。

但是如果多字节字符可以写入数据库然后可以读出,那么为什么它重命名时会失败?

0 投票
1 回答
1679 浏览

javascript - 如何检测 JavaScript 输入的多字节字符结束?

目前,我听Enter钥匙开始发送消息。

但是对于多字节字符,Enter键应该选择某个字符。

问题是我不知道如何检测用户是否正在输入多字节字符,即使他在这个过程中,消息也会在他第一次Enter按键时发送。

所以用户体验真的很奇怪。

有人对此有解决方案吗?

如果您不明白我的意思,可以尝试在这里聊天,一旦您开始对话,切换到多字节模式,您就会明白我的意思。

链接在这里:

http://maishudi.com/OMegle.php

0 投票
3 回答
239 浏览

php - 我在哪里可以获得 PHP 的所有多字节函数的完整列表?

我在哪里可以获得 PHP 的所有多字节函数的完整列表?我需要通过我的应用程序并将非 MB 字符串函数切换到新的 mb 函数。

0 投票
1 回答
600 浏览

php - 我应该对多字节字符串使用 mb_* 或 iconv_* 函数吗?

就像我们现在一样,在 PHP 中处理多字节字符串并不是那么容易。例如,我想获取以下字符串的长度:ä

我应该使用哪些功能?mb_* 还是 iconv_*?为什么?考虑到编码可能不限于UTF-8。

提前谢谢!

0 投票
2 回答
1161 浏览

ruby-on-rails - 如何在 Ruby/Rails 中安全地解析多字节提要?

(对不起,如果一个新手问题......我已经做了很多研究,老实说......)

我正在编写一些 Ruby on Rails 代码来解析 RSS/ATOM 提要。我的代码在一个讨厌的“£”符号上抛出。

在做任何其他事情之前,我一直在尝试规范化提要的描述和标题字段的方法:

但是,当它遇到带有“£”的字符串时,我猜测 mb_chars 遇到了问题并返回了一个常规的 Ruby String 对象。我得到错误:

那么,防御性地准备这些字符串以插入数据库的最佳过程是什么?(我还需要对它们进行一堆字符串处理)

我的问题很复杂,因为我不知道我正在处理的提要的格式。例如,我对以下行有一些运气:

但是,当它遇到“£”时,它只会截断该点之后的所有内容。

当我使用 String.inspect 函数显示“£”符号时,它显示在“\243”处。如果无法“正确”处理此符号,我很乐意将其替换为另一个值(例如“GBP”)。因此,该代码的帮助也将不胜感激。

有问题的提要是http://www.dailymail.co.uk/sport/football/index.rss