问题标签 [multibyte-characters]

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 投票
0 回答
58 浏览

c - 将多字节字符打印到 stdscr/程序窗口 NCURSES

目前我尝试使用 C 和 NCURSES 模拟矩阵雨。我需要使用 NCURSES 将多字节字符打印到程序窗口。我有从 Unicode 返回随机字符 12784-12799 范围的函数。这些是从十六进制转换为十进制的日文字符。

然后我使用这个函数打印不同位置的字符:

col-rows[i] 包含随机创建的数字。

这种方法暂时不起作用,程序打印 ^@ ^A ^e ^B 等,而不是日文字符。我相信我使用了错误的函数并且 mvwaddch 不接受多字节字符。如果是这样,请告诉我哪个 NCURSES 函数可用于此目的。

0 投票
2 回答
149 浏览

multibyte-characters - IronPdf 中的多字节字符读取问题

我正在尝试IronPDF。我想将 PDF 元数据插入到使用 IronPDF 读取的数据库中。但是,IronPDF 无法读取元数据中的某些“ı”字符。在这些字符的位置留有空格。这是我的代码示例:

当我将粘贴字符串复制到 Notepad++ 时,它会给出如下结果:

在此处输入图像描述

这是应用程序视图的屏幕截图:

在此处输入图像描述

有没有办法解决这个问题或者这是 IronPDF 的一个错误?如果一切顺利,我当然会考虑购买。但当然,如果第一次尝试失败,请继续使用 iTextSharp。

编辑:首先,我为 Windows 道歉,这让我感到惊讶。我整天都在努力建立一个新系统,不幸的是它仍然没有安装视觉工作室等。我在下面添加了一个我遇到问题的文件,IronPDF 版本显示为 2019.7.0.0。

PDF 文件:https ://yadi.sk/d/HwP9JWRWTzMlSA

0 投票
1 回答
78 浏览

python - 如何在python中操作多字节字符串?

我有一个包含多字节数据的日志文件()。我想编写一个对其进行一些数据操作的脚本。

print(line) 给出以下输出: 在此处输入图像描述

每个字符后面都有一个额外的字节。由于WINDOWS不是多字节,这不起作用。我无法找到解决方案。有人可以在这里帮助我吗?

0 投票
2 回答
41 浏览

r - 如何从 shinyapps.io 下载带有多字节字符图的 Rmarkdown 报告

情况

你好。我正在尝试从 shinyapps.io 下载 .pptx Rmarkdown 报告。问题是,我想下载一个多字节字符的图表。(日本人)

由于shinyapps.io 不提供日文字体,因此我使用该showtext包来渲染带有多字节字符的图形,并且在浏览器中显示效果很好。

但是,当我尝试通过downloadHandler()usingrmarkdown::render下载 .pptx 文件时,下载的 .pptx 文件带有日文字体(以及“折叠”字体中的所有多字节字符。)

可重现的例子

结果

这是 shinyapps.io 应用程序中显示的内容。多字节字符按预期显示。

在此处输入图像描述

而下载的 .pptx 文件如下。

在此处输入图像描述

问题

有什么方法可以从 shinyapps.io 下载带有多字节字符的 .pptx 文件?(如 shinyapps.io 中的应用程序所示。

0 投票
1 回答
117 浏览

c++ - C++ (Windows):MultiByteToWideChar 不适用于某些字符

我正在阅读一个包含数千个非英语字符串的文件,其中许多是东亚人,使用fgets,然后调用MultiByteToWideChar将它们转换回 Unicode:

这种方法几乎在所有情况下都可以正常工作。它不起作用的两个字符串

在这两种情况下,调用MultiByteToWideChar返回零,最后一个字符wstr是垃圾:

是否有一些环境设置或读取我的文本文件的替代方式可以消除这个问题?

0 投票
1 回答
124 浏览

c - 如何在 C 中将 wchar_t 转换为多字节 char

我正在寻找一种将 wchar_t 转换为多字节字符的方法,而不使用 wctomb 或任何现成的例程。我必须在 C 而不是 C++ 中做到这一点,并且互操作性在这里并不重要。

我的目标是使用 write 系统调用逐字节打印 wchar。例如,'é' 字符等价于 0xe9 编码为 wchar,并且等价ff ff ff c3 ff ff ff a9于其多字节形式。我可以从一种形式切换到另一种形式吗?

提前致谢。

0 投票
0 回答
57 浏览

visual-studio - Visual Studio“字符集配置”与编码方案的关系?

正如微软所说:

多字节字符集,特别是双字节字符集 (DBCS)。多字节字符集提供了一种表示许多亚洲语言中大量字符的方法。

DBCS 代码页用于日语和中文等语言。在这样的代码页中,某些字符具有两字节编码

因此,基于上述情况,我得到了相互矛盾的结果:(所有可能的情况中有 2 个,并且在 4 个中的 3 个案例中我有 3 个问题)

所以案例1(合同):

  • 我想当我选择Use Multi-Byte Character Set时,以下会自动选择 DBCS 编码:

string chineseString = "我是路人";

但编译器却说:

警告 C4566:由通用字符名称“\u6211”表示的字符无法在当前代码页中表示 (1252)

这与配置本身相矛盾,因为 1252 只是西方语言编码。不应该在这里使用 MBCS/DBCS 吗?

案例2(可以理解,不矛盾):

  • 我选择“使用 Unicode 字符集”

现在我假设我必须指定一个编码,所以我会这样做:

string chineseString = u8"我是路人"

这对我有用并且有意义。

案例3(合同纠纷):

  • 我选择“使用多字节字符集”: wstring chineseStringW = L"我是路人"

那么现在是使用编码 DBCS 吗?如果是这样,为什么string不拿起DBCS?或者只是因为\u6211适合wchar_t

案例4:

  • 我选择“使用 Unicode 字符集”: wstring chineseStringW = L"我是路人"

那么现在是UTF16-LE编码吗?

0 投票
1 回答
60 浏览

c - 在 c 中用 '' 或 "" 声明 char 变量的区别

有什么区别

我也对 char 如何允许许多字符感到困惑。 string 和 char 之间有什么区别?

0 投票
1 回答
31 浏览

javascript - 带有拼接的文本替换不适用于微笑(或多字节字符)

我对复杂的替换算法有疑问。最后,我能够将问题减少到这个最小的代码:

我的输入是"test hello test world",预期的输出是"REPLACEMENT hello REPLACEMENT world",但实际上是"REPLACEMENT hello tREPLACEMENTworld"。我记得在 Twitter API 中,JavaScript 有一种奇怪的方式来处理字节位置和字符索引。所以这个问题是由笑脸引起的。

如何修复我的代码,以便替换按预期工作?额外的问题为什么会发生这种情况?

0 投票
0 回答
165 浏览

php - PHP 7 到 8 迁移,MB_OVERLOAD_STRING 怎么办

我正在尝试将 php 网站从版本 7 迁移到 8。使用了 MB_OVERLOAD_STRING,在 PHP 8 中已删除。我应该怎么做才能迁移它?只需将所有 strpos 和其他函数替换为 mb_strpos 或其他什么?