字符编码怎么看?
以下都是“中国”两个字的编码:
UTF-8:中国
URL编码(同样是UTF-8):%e4%b8%ad%e5%9b%bd
unicode:u4e2du56fd
问题1:为什么UTF-8的编码和URL编码不一样?都是UTF-8不是吗?
问题2: % u 这些前缀什么意思?
问题3:字符编码要怎么看?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
一知半解,尝试抛砖引玉:)
中国
并非 utf-8,而是HTML、XML 等 SGML 类语言的转义序列(escape sequence)。它们不是「编码」。以 HTML 为例,这三种转义序列都称作 character reference:第一种是 character entity reference,后接预先定义的 entity 名称,而 entity 声明了自身指代的字符。后两种是 numeric character reference(NCR),数字取值为目标字符的 Unicode code point;以「&#
」开头的后接十进制数字,以「&#x
」开头的后接十六进制数字。NCR 以 Unicode 为准,与文档编码无关。「中国」二字分别是 Unicode 字符 U+4E2D 和 U+56FD,十六进制表示的 code point 数值「4E2D」和「56FD」所以。 其实上你可以理解是特定前缀+ Unicode ( 非 utf-8)编码。 所以你看看其实和 unicode 是一样的。
%
是URL编码规定的转义前缀。 所以你看看这个其实和 utf-8 的中国是一样一样的(请刨除前缀看)问题1: 中 字的 utf8 码是E4B8AD 国字的utf-8 是E59BBD,在utf8的世界里,虽然可以表示中文,但是任何字符都有对应的码表位置。简单说 你认为的utf-8 中国是错误的。
问题2 % 号是前缀是转义,U 是unicode 编码规定的前缀
问题3:没有get 到楼主的意思,是应用中应该选择什么样的编码呢,还是 别的