问题标签 [ucs2]

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

vim - 在 Windows 上使用 Vim 打开 UCS-2le 文件

我在 WinXP 上使用 Vim 7.3。我在工作中使用由应用程序生成的 XML 文件,该应用程序使用 UCS-2le 编码编写它们。在 vim wiki 上阅读了几篇关于编码的文章后,我发现了以下建议,即在 vimrc 中设置我的文件编码:

有问题的文件以 FF EE 作为第一个字符(已确认使用 HxD 查看),但 Vim 无法正确打开它。我可以在我的 vimrc 中正确打开我的 UCS-2le 文件:

但是现在我的 UTF-8 文件一团糟!

任何建议如何进行?我通常在没有 MSwin 的情况下运行 Gvim(如果重要的话)。我使用的插件很少。我关于文件编码的实际 vimrc 设置是:

第三个位置的 ucs-2le 条目似乎没有什么区别。据我了解,第一个条目(设置编码)是 Vim 在其缓冲区内部使用的编码,而第二个(设置文件编码)处理 vim 读取和写入文件时的文件编码。因此,在我看来,由于文件具有字节顺序标记,因此 ucs-bom 作为 setfileencodings 中的第一个条目应该捕获它。据我所知,vim 似乎无法识别该文件是每个字符 16 个字节。

注意:我可以/确实通过在打开 ucs-2le 文件时手动设置文件编码来解决问题:

干杯。

0 投票
1 回答
7815 浏览

encoding - notepad ++ 显示 ucs-2LE 而 ubuntu FILE [file] 显示 UTF-16LE,我很困惑?

我正在尝试将从 a 生成的文件转换mssql为 utf-8。mssql当我在 Windows Server 2003 中使用 notepad++打开他的输出时,当我将文件UCS-2LE复制到 Ubuntu 机器时识别出该文件,使用file [file]它显示编码为UTF-16LE. 真的很迷茫,编码肯定是有区别的,因为名字不一样。但是为什么我会在同一个文件中看到这个。它是.csv从 mssql 查询生成的文件。

0 投票
2 回答
2719 浏览

python - unicode endian 让我很困惑

我以三种不同的形式编辑三个具有相同内容“你”(you英文)的文件——gbk\utf-8\ucs-2,gedit 名为“ok1,ok2,ok3”。

实际上 f3 是 '\x60\x4f',但是下面的输出让我很困惑

为什么在ucs-2(或说unicode)中只有字节序问题,而不是utf-8,而不是gbk?

0 投票
1 回答
359 浏览

css - 为什么lessc 将文件编码为UCS-2 Little Endian?

在带有 Node 的 Windows 平台上运行以下命令

lessc style.less > style.css -x --yui-compress

以“UCS-2 Little Endian”格式输出 style.css。通常我不会在意,但我注意到我编译的样式表有很大的文件大小(经过检查,正好是两倍)。出于某种原因,在 Windows 资源管理器中查看时,这种编码会使文件大小加倍。

将文件转换为 UTF8 可将文件大小减半。跳过 -x 和 --yui-compress 不会影响这一点。

有任何想法吗?我很在意,因为我不想在构建过程中使用某种编码转换器。

0 投票
1 回答
32938 浏览

utf-8 - 将 SQL Server 2008 R2 的编码(排序规则?)更改为 UTF-8

我们想将我们的 Confluence 系统迁移到 SQL Server 2008 R2。现在,由于 Confluence 使用 UTF-8 编码,我需要一个使用相同编码的数据库(我猜这是排序规则?)。

命令来了

现在,似乎没有 utf-8,而且我发现 SQL Server 使用基本相同的 ucs-2。但我不知道 ucs-2 的排序规则名称是什么?有人知道吗?

编辑:我现在确实看到了编码和整理之间的区别。Confluence文档建议我应该创建一个依赖于 UCS-2 的模式(因为 MS SQL 缺少对 UTF-8 的支持)。我查看了 Managment Studio,并在数据库的Security目录中找到了模式条目。但是,我无法弄清楚如何将 UCS-2 编码分配给架构。我必须在 Managment Studio 中实现这一点(或者我应该使用哪个查询)?

0 投票
2 回答
1910 浏览

java - Java 7 的内部字符编码

据我所知,当 JRE 执行 Java 应用程序时,该字符串在内部将被视为 USC2 字节数组。在wikipedia中,可以找到以下内容。

Java 最初使用 UCS-2,并在 J2SE 5.0 中添加了 UTF-16 补充字符支持。

随着 Java (Java 7) 的新发布版本,它的内部字符编码是什么?
Java有没有可能在内部开始使用UCS-4?

0 投票
1 回答
289 浏览

c++ - c ++:如何将任何文件读入std :: string

我有一堆 txt 文件,想将它们读入 std::string,其中一些是 UCS-2、UTF-8 编码的。如何将它们读入 std::string。我只想将任何文本文件读入 std::string。我必须转换它们吗?

0 投票
1 回答
22546 浏览

file - Python 3:读取 UCS-2 (BE) 文件

我似乎无法使用内置的 open() 函数在 Python 3.3 下解码 UCS-2 BE 文件(遗留的东西)(堆栈跟踪显示 UnicodeDecodeError 并包含我的 readLine() 方法) - 事实上,我找不到用于指定此编码的标志。

使用 Windows 8,终端设置为代码页 65001,使用“Lucida Console”字体。

我猜代码片段不会有太大帮助:

感谢对此问题的任何见解。

0 投票
0 回答
178 浏览

php - 使用 strlen 和 strtok 进行 iconv 后的问题

我编写了一个代码来将输入的 UCS-2LE 文件转换为普通的 8 位 ISO-8859-1 文本。转换后,我使用 strtok 函数将整个文本拆分为单词。现在我正在对获得的每个单词应用 strlen,但是我的单词长度很奇怪,我无法理解。

输入文件,文件名 = input.txt(在 UCS-2LE 中)是

输出是

1)长度显示不正确是怎么回事。

2) 输出中的第 6 行是新行字符,它没有被 strtok 正确标记。为什么?

3)我读了一点BOM,我知道文件中的前两个字符用于识别所用字符的格式。有没有办法避免这些字符,比如在输出的第一行,它显示了两个额外的字符。

在此先感谢您的帮助。

0 投票
2 回答
1939 浏览

perl - 如何使用 Perl 更改文件的编码?

我正在编写一个创建 xml 文件“settings.xml”的 perl 脚本。(使用 XML::Writer)。我希望文件以 UCS-2 大端编码,但我不确定如何。

我试过这样的事情:open(my $output, "> :encoding(UCS-2BE)", "settings.xml");,但所做的只是让文件输出一团糟,(例如http://i.imgur.com/p9cruCf.png或一系列汉字)同时保持编码文件为 ANSI。

知道如何解决这个问题,或者如何将文件转换为 UCS-2?

我是 Perl 的初学者,如果其中一些没有意义,我很抱歉。

编辑:对于遇到此问题的其他人,请参阅下面的答案,他们提供了有关如何解决此问题的详尽说明。