问题标签 [charset]

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

go - Golang:在 Windows 中压缩文件时,Go 中的解压缩文件会在文件名中出现字符编码问题

我正在尝试使用 zip lib 在 Go (Golang) 中解压缩文件。问题是当 zip 文件在 windows 中压缩后,所有特殊字符都会变得混乱。windows 可能使用 windows1252 字符编码。只是无法弄清楚如何解压缩这些文件。我已经尝试使用golang.org/x/text/encoding/charmapor golang.org/x/text/transform,但没有运气。我想,在 zip lib 里面应该有一个替代物来改变charmap。

另一个问题:有时应用程序会解压缩在 Windows 上压缩的文件,有时会在不同的操作系统上解压缩。因此,应用程序需要识别字符编码。

这是代码(感谢:https ://golangcode.com/unzip-files-in-go/ ):

这是输出

0 投票
0 回答
22 浏览

java - java中filereader和filewriter的默认字符集是什么

在这里,我试图从一个文件中读取内容并将其写入另一个文件。我的文件包含不同的语言单词和符号,像这样

当我像这样使用具有指定字符集的文件读取器和写入器时,它可以正常工作并正确复制。

但是当我没有指定字符集时,它会将给定的文本复制到一些未知的符号,就像这样,

所以,这意味着当我没有指定字符集时,它必须使用默认字符集。那么,它使用的是什么字符集?filereader 和 filewriter 以及其他 io 类的默认字符编码是什么。

谁能解释一下。

提前致谢

0 投票
0 回答
70 浏览

java - Java - (273 IBM) 字符集在解码 21 时返回 \n

所以我有以下代码片段:

所以 fieldGetter.get() 基本上是“21”,而 273 字符集用于 IBM / PL1。格式不言自明。

getValue() 返回“\n”,这很奇怪,因为根据我的理解,我定义的格式应该是 2 个字符长。不知何故,在调试它时,我可以看到以下内容:

调试屏幕

所以你可以看到一个值中有两个字符,我认为这是因为 Eclipse 编码它不同,因为它是用 273 编码的。我稍后会解释这个问题。

通常 getValue() 方法会返回调试时无法读取的内容,如下所示: 调试另一个编码值

如您所见,它是一个正方形:)

这里的问题是我们坚持这一点,它会导致 DB2 表上出现奇怪的行为,我的假设是这是因为 SQL DB 中的“\n”会导致一个新行。如果我错了,请纠正我。持久值是从 IBM 机器中选择的,它导致 37 个字符,而不是预期的 21 个字符。我必须补充一点,它查看的是十六进制值。

所以我的问题是是否有另一种方法来实现我的目标,即通过解码 charset 273 中的字节数组来创建一个新字符串?或者如果我错过了什么或类似的东西?也许无论我如何编码/解码它都会导致相同的结果,因为这正是 21 在 273 中解码的样子?

提前谢谢了!

0 投票
0 回答
38 浏览

encoding - Icecast 介绍 mp3 文件

为什么当有一个希腊文件名 mp3 文件在开始时没有播放,但是当我有类似 111.mp3 的文件时它可以工作?

这个设置只会配置一次,所以有一个像 Introduction.mp3 这样的常量文件名是没有问题的。

但是,如果我可以做些什么来解决这个问题,请告诉我。

0 投票
0 回答
30 浏览

xml - 从 Oracle 中的 CLOB 读取 xml 时检索正确的字符集

以下 xml 存储在 Oracle 的 CLOB 字段中:

以下 sql 查询正确更新了标签 tmEsObj 和 tmProg 的属性:

但是从生成的 xml 中可以看出,编码已经改变

有没有办法告诉系统从一开始就考虑正确的编码?否则如何在更新 xml 之前再次设置正确的编码?

0 投票
0 回答
28 浏览

spring-mvc - 如何设置 Spring MVC 默认字符集

我正在使用Spring MVCLogbook记录所有 HTTP 请求和响应。我的问题是响应正文以 ISO-8859-1 编码记录。produces我可以通过在 my中设置参数来修复它,RequestMapping如下所示:

但是,MediaType.APPLICATION_JSON_VALUE不推荐使用,建议使用MediaType.APPLICATION_JSON. 但是,如果参数charset=utf-8中不存在no produces,则响应正文在日志中仍然不是 UTF-8。

行为类似于“没有定义字符集?所以默认的是 ISO-8859-1”。那么,如何将所有 API 响应的默认字符集设置为 UTF-8?

0 投票
0 回答
18 浏览

mysql - 将 mysql 默认字符集更改为 utf8 会影响我数据库中的其他数据吗?像 UUID、加密的、blob 等

因为我遇到了一个问题,即一旦将数据放入数据库并检索,?即使我已将前端的标头设置为 UTF-8,某些 unicode 字符也无法识别(显示为)。

我尝试将clientand的默认字符集更改server为 UTF-8

数据库配置截图

它解决了这个问题。

但我担心更改整个数据库的字符集(从latin1to utf-8)会导致其他领域的问题,例如 UUID、加密的、blob 等。

我尝试charset仅更改为表和列的 utf-8。

colmn 配置的屏幕截图

表配置截图

但unicode字符问题再次出现。

我错过了什么吗?

0 投票
1 回答
47 浏览

c# - 如何在 windows-1251 字符集中删除字符串上的未知字符

我有一个无法转换为 windows-1251 字符集的文本。例如:

我有一种从 UTF8 转换为 windows-1251 的方法:

现在它返回这个:

我不想显示未正确转换为 windows1251 字符集的字符。在这种情况下,我只想:

我怎样才能做到这一点?

0 投票
1 回答
68 浏览

java - 使用 Charset 转换字节会导致字符串末尾出现菱形?

我目前将字符串存储为字节数组。但是,当我尝试使用以下代码使用 Charset 将字节转换回字符串时,最后会出现菱形:

如果我将编码设置为 ISO-8859-1,它转换得很好。我认为这可能是源代码文件的编码,但在 Notepad++ 中打开它表明它也是 UTF-8。

我是否遗漏了什么,或者这只是 Android Studio 的 Logcat 窗口的问题?

- 编辑 1 -

进一步测试表明,3个字符的字符串结尾没有这个填充问题。如果您使用更长的字符串, Charset.decode 似乎会根据断点用 \u0000 值填充 char 数组。

String.valueOf 最终会将填充字符打印为菱形,同时创建一个新的 String 对象会删除填充,但是,由于敏感值,我根本不想使用 String 将字节数组转换为 char 数组。

- 编辑 2 -

如果您再次调用 charset.decode() 似乎会发生上述情况,所以我猜有一个缓冲区正在附加但不确定在什么时候。尝试使用 charBuffer.clear() 清除,但第二个代码块的输出似乎相同,即 3 个字符 + 2 个空格 + 6 个新字符。

0 投票
2 回答
1028 浏览

mariadb - MariaDB 默认字符集

MariaDB 的文档清楚地说明了如何设置服务器默认值,如字符集和排序规则。所以我打开了我的 Mariadb 控制台并运行:

控制台写好了。然后我重新启动服务器,但是当我尝试创建新数据库时,仍然有相同的 latin2 字符集和瑞典排序规则。我通过 Symfony cosole 命令自动完成

那有什么问题?我按照文档说的那样做了。