一、错误描述:测试编码格式错误,不支持UTF-8或GBK

二、错误原因分析

  在单元测试时需要加-encoding utf-8才可以测试通过。

  

三、解决办法

  在记事本打开,另存为ANSI格式,解决问题。

  

 ps:

1.-encoding 设置源文件编码名称。在编译的时候,如果没有用-encoding参数指定java源程序的编码格式,则javac.exe认为源代码的编码格式是操作系统默认的编码格式(WindowsXP默认GBK),所以就会用按照操作系统默认的编码格式去处理源代码。上面由于windows下默认编码格式是GBK,编译的时候没有javac就会把ArrayAsAReference.java当成GBK编码的文件,但是实际上ArrayAsAReference.java是utf-8格式,所以转换就出现了错误。

2.ANSI(全称:American National Standards Institute,中文:美国国家标准学会),不同的国家和地区制定了不同的标准,由此产生了 GB2312、GBK、Big5、Shift_JIS 等各自的编码标准,这些使用1至4个字节来代表一个字符的各种汉字延伸编码方式,称为ANSI编码。在简体中文Windows操作系统中,ANSI编码代表GBK编码;在日文Windows操作系统中,ANSI编码代表Shift_JIS编码。

posted on 2018-04-26 22:26  时&光  阅读(215)  评论(4编辑  收藏  举报