黑马程序员技术交流社区

标题: 今日get到了一个经验------>错误: 编码GBK的不可映射字符. [打印本页]

作者: 哦哈哟    时间: 2016-3-11 03:32
标题: 今日get到了一个经验------>错误: 编码GBK的不可映射字符.
【错误: 编码GBK的不可映射字符】
自学了差不多有一个月了吧,今天第一次看见这个报错,一直用着Notepad++写java,但每次都是手动在文档新建txt文件再改名字的,今天手贱用了Notepad++来新建,谁知道他新建的文档的编码默认了是UTF-8(无BOM)D的,所以在编译的时候出现了--->错误: 编码GBK的不可映射字符。解决办法有几种:第一种:就是在Notepad++的【格式】->【转为ANSI编码格式】,然后在【设置】-->【首选项】-->【新建】-->设置默认ANSI以后就可以用Notepad++新建了。

1


2


3


4

4



5

第二种:手动,右击出问题的*.java文本【编辑】另存为,把“编码”改为“ANSI”就编译通过了。

1



2

第三种:在DOS命令里使用-encoding参数指明编码方式:javac -encoding UTF-8 *.java(这个方法有些情况不行) 。

其他说明:
ANSI:美国国家标准协会,系统预设的标准文字储存格式。简体中文编码GB2312,实际上它是ANSI的一个代码页936
UTF-8:通用字集转换格式,这是为传输而设计的编码,2进制,以8位为单元对Unicode进行编码 ,如果使用只能在同类位元组内支持8个位元的重要资料一类的旧式传输媒体,可选择UTF-8格式。
在UTF-8里,英文字符仍然跟ASCII编码一样,因此原先的函数库可以继续使用。而中文的编码范围是在0080-07FF之间,因此是2个字节表示(但这两个字节和GB编码的两个字节是不同的),用专门的Unicode处理类可以对UTF编码进行处理。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2