gpt4 book ai didi

java - unicode字符的编码?

转载 作者:行者123 更新时间:2023-11-30 10:48:19 25 4
gpt4 key购买 nike

我从第三方获取文档,我在浏览器上使用字符集 utf-8 显示

  Content-Type: text/html; charset=utf-8

但有些字符显示为垃圾。我的理解是即使他们发送的是 unicode 字符,utf-8 编码也是合适的。我应该将编码更改为其他内容还是发送方的问题。发送方使用 ANSI/ASCII 编码。我相信他们应该使用 utf 8因为 ANSI/ASCII 不适用于 unicode 字符。对吗?

最佳答案

计算机最终只能处理 1 和 0(数字)。要在计算机中表示文本,您需要将数字映射到字符。这正是character encoding是为了。

例如ASCII字符编码规定65=A,66=B等

有许多不同的字符编码。 ASCII 是一种非常古老且有限的字符编码,只能容纳 127 个字符。

UTF-8 是一种不同的字符编码,可以对 Unicode 标准中的所有字符进行编码,该标准包含数千个字符。

如果您的 HTML 页面指定页面上的文本使用 UTF-8 编码,但实际上它使用不同的编码,那么您会在屏幕上看到垃圾 - 您告诉浏览器它是 UTF-8,但它实际上是不是这样它会以错误的方式解释页面。如果你得到这个,那么它几乎肯定是发送方的问题 - 发送方必须确保它确实使用 UTF-8 对文本进行编码,如果它在 HTML header 中是这样的话。

UTF-8 适用于任何类型的文本,在我看来这应该是您默认选择的字符编码;只有在有充分理由的情况下才使用其他东西。

UTF-8 与 ASCII 兼容(ASCII 是 UTF-8 的一个子集)- 如果发送端确实发送 ASCII 编码的文本,使用 UTF-8 显示它应该没有问题。如果您收到奇怪的字符,那么发送方很可能没有真正使用 ASCII。

关于java - unicode字符的编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35843894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com