0


GBK不可映射字符(java编写中文显示不出来)

初学者刚接触java的时候,经常会使用到CMD来运行java程序。而这个时候,最容易被命令窗口弹出来的满屏错误给直接劝退。比如这个最常见的这个错误:编码GBK的不可映射字符,其实这是很常见的一种错误,由于字符编码造成的。

首先我写的代码是这样的 然后是没有使用集成编辑器,直接使用的记事本这样的工具来编写代码,运行完他是显示错误的GBK不可映射字符

原因就是中间带了个中文“啊”所以提示错误,我把中文去掉运行了一遍是可以的

看到没有把啊换成多个数字他是可以现实的那么问题就是出在出现中文的时候会提示错误

这时候我们运行的时候要使用javac **-encoding UTF-8 **HelloWord.java(红色部分是你代码文件的名称) 这样编译就可以通过然后我们在把java文件另存为一下,把编码改成ANSI 它默认的是UTF-8

接着我们再次运行 ,就能运行成功显示中文

然后我也百度了一下 这个UTF-8 与 ANSI的区别:

UTF-8:针对Unicode的一种可变长度字符编码。它可以用来表示Unicode标准中的任何字符,而且其编码中的第一个字节仍与ASCII相容,使得原来处理ASCII字符的软件无须或只进行少部分修改后,便可继续使用。(源于百度百科)

ANSI:是一种字符代码,为使计算机支持更多语言,通常使用 0x000x7f 范围的1 个字节来表示 1 个英文字符。超出此范围的使用0x800xFFFF来编码,即扩展的ASCII编码。(源于百度百科)

所以两者区别在于 UTF-8用2 个字节来表示 1 个字符。但是与GB的编码的两个字节是不一样的

(来自于新手的小总结如有错误大家体谅并望大方给予指正,感谢! 若有那些地方侵权请联系)

标签: java

本文转载自: https://blog.csdn.net/LY_uck/article/details/120720578
版权归原作者 LY_uck 所有, 如有侵权,请联系我们删除。

“GBK不可映射字符(java编写中文显示不出来)”的评论:

还没有评论