栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

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

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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:是一种字符代码,为使计算机支持更多语言,通常使用 0x00~0x7f 范围的1 个字节来表示 1 个英文字符。超出此范围的使用0x80~0xFFFF来编码,即扩展的ASCII编码。(源于百度百科)

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

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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/323288.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号