问题标签 [utf-16]

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

xml - 在 UTF-16 编码的文本文件中搜索和替换的最简单方法是什么?

我正在尝试通过更改它们引用的名称来更新一系列 xml 文件。我有一个名称已更改的表,当前名称的列和要替换的名称的列。

我寻找脚本搜索和替换的方法并找到了 sed。在我第一次尝试之前,这似乎是一个不错的选择。在检查文件时,我在每个回车和换行之间发现了几个无法识别的字符。我做了一些搜索,发现在 utf-16 文件上使用 sed 存在问题。

这些是我正在搜索的文本文件,尽管有副本存储在 SQL Server 表中类型为 xml 的列中。更新或填充数据库时,字段始终设置为 ColumnName=N'xmltext'。

我也对如何更新这些字段感兴趣,尽管主要问题是如何最好地更新文本文件。

我正在使用扩展的正则表达式,我的搜索是 for([>\\.])OldName([<\\.])并将其替换为\1NewName\2

0 投票
3 回答
1128 浏览

java - 如何在不使用 BOM 的情况下识别不同的编码?

我有一个文件观察器,它从一个使用 utf-16LE 编码的不断增长的文件中获取内容。写入它的第一个数据位具有可用的 BOM——我使用它来识别针对 UTF-8 的编码(我的大部分文件都是用其中编码的)。我捕获了 BOM 并重新编码为 UTF-8,这样我的解析器就不会崩溃。问题在于,由于它是一个不断增长的文件,因此并非所有数据都包含 BOM。

这是我的问题 - 如果不将 BOM 字节添加到我拥有的每组数据(因为我无法控制源),我可以只查找 UTF-16 \000 中固有的空字节,然后使用那作为我的标识符而不是BOM?这会让我头疼吗?

我的架构涉及一个 ruby​​ Web 应用程序,当我用 java 编写的解析器拾取它时,将接收到的数据记录到一个临时文件中。

现在写我的识别/重新编码代码如下所示:

更新

我想支持欧元、破折号和其他字符之类的东西。我修改了上面的代码看起来像这样,它似乎通过了我对这些字符的所有测试:

大家怎么看?

0 投票
1 回答
277 浏览

c# - 使用 int 将 Astral Plane Unicode 代码点打印到控制台

请参阅此处了解相关问题

但是,char转到0xffff(或65535)。我需要写0xd800df46(或66374)哥特式字母Faihu,所以将其转换intchar行不通。我进行了转换,也就是说,我得到了正确的整数,这意味着我可以计算代理对,但我不知道如何“渲染”它,将其转换为要作为字形输出的字符。

请注意,我不能使用 \Unnnn ...好吧,理论上的原因。

谢谢你。

0 投票
7 回答
4225 浏览

unicode - Dummy 的 Unicode 指南

谁能给我一个简明的定义

  • 统一码
  • UTF7
  • UTF8
  • UTF16
  • UTF32
  • 代码页
  • 它们与 Ascii/Ansi/Windows 1252 有何不同

我不是在寻找 wikipedia 链接或令人难以置信的细节,只是一些关于 Unicode 的巨大变化是如何产生的以及为什么会出现以及为什么作为程序员应该关心的一些简短信息。

0 投票
5 回答
36012 浏览

java - Java中的UTF-16到ASCII转换

一直忽略它,我目前正强迫自己更多地了解 Java 中的 unicode。我需要做一个关于将 UTF-16 字符串转换为 8 位 ASCII 的练习。有人可以告诉我如何在Java中做到这一点吗?我知道您不能用 ASCII 表示所有可能的 unicode 值,所以在这种情况下,我希望无论如何都只添加超过 0xFF 的代码(也应该默默地添加坏数据)。

谢谢!

0 投票
1 回答
5032 浏览

asp.net-mvc - 为什么 ASP.NET MVC 中的 ContentResult 控制器在指定 UTF-8 时返回 UTF-16?

我有一个为嵌入式设备返回 XML 的 ActionResult。相关代码为:

即使指定了 UTF-8,生成的 XML 也是:

ASP.NET MVC 编译为 AnyCPU 并在 Windows 2008 服务器上运行。

为什么它不返回 UTF-8 编码的 XML?

0 投票
2 回答
22348 浏览

string - Tcl 用于获取字符串中每个字符的 ASCII 码

我需要为字符串中的每个字符获取 ASCII 字符。实际上它是一个(小)文件中的每个字符。以下前 3 行成功地将文件的所有内容拉入字符串(根据此配方):

我相信我正确识别字符的 ASCII 码(参见http://wiki.tcl.tk/1497)。但是,我在弄清楚如何遍历字符串中的每个字符时遇到了问题。

首先,我不认为以下是使用 Tcl 在字符串中循环字符的一种特别惯用的方式。其次,更重要的是,它的行为不正确,在每个字符之间插入了一个额外的元素。

下面是我编写的代码,用于处理上面设置的“数据”变量的内容,然后是一些示例输出。

代码:

输出:

0 投票
8 回答
11665 浏览

file - 检测 UTF-16 文件内容

是否可以知道文件是否具有 Unicode(每个字符 16 字节)或 8 位 ASCII 内容?

0 投票
1 回答
1089 浏览

xml - MSXMLWriter60 不为 UTF-16 编码输出 byteOrderMark

我正在使用“如何使 XMLDOMDocument 包含 XML 声明?”中看到的代码变体。(也可以在MSDN上看到。如果我将编码更改为“UTF-16”,人们会认为它会输出为 UTF-16……而且它“确实”……通过查看文本编辑器中的输出; 但是在十六进制编辑器中检查它,缺少字节顺序标记(尽管属性设置为 true),并且 XML 编辑器将文档拒绝为无效的 UTF-16,因为缺少 BOM。

我在看什么?

输出如下所示:


为什么我使用 VB6?它实际上是在 VBA(同一代,VB6 的小子集)中,用作 EMC-Captiva 的 InputAccel/FormWare 的脚本语言,因此不能切换。

0 投票
3 回答
7310 浏览

java - 使用 JNA 获取/设置应用程序标识符

我之前关于 Windows 7 任务栏的问题之后,我想诊断一下为什么 Windows 不承认我的应用程序独立于javaw.exe. 我目前有以下 JNA 代码来获取AppUserModelID

应用程序的输出看似乱码:

意识到输出可能是 UTF-16 的事实,在 (3) 中,我尝试从 UTF-16 转换字节数组。老实说,我不知道我的方法是否正确,因为 (a) 我不知道 a 的大小PWSTR和 (b) 我不知道是否GetCurrentProcessExplicitAppUserModelID确实返回了字节数组或字符串。

我知道 JSmooth 将在模拟这种效果的包装器中运行 GUI 进程。Launch4j 声称可以这样做,但似乎不起作用。无论 Java 包装器如何,我都希望拥有该AppUserModelID套件。

这里出了什么问题?