import java.nio.charset.Charset;
public class UTF8{
public static void main(String[] args) {
System.out.println("file.encoding=" + System.getProperties().getProperty("file.encoding"));
System.out.println("默认是:"+Charset.defaultCharset().name());
}
}
import java.nio.charset.Charset;
public class GBK{
public static void main(String[] args) {
System.out.println("file.encoding=" + System.getProperties().getProperty("file.encoding"));
System.out.println("默认是:"+Charset.defaultCharset().name());
}
}
列1:
文件编码和javac命令编码都是GBK,程序运行没问题。
列2:
文件编码和javac命令编码都是UTF-8 ,程序运行没问题。
列3:
文件编码UTF-8和javac命令编码GBK,中文乱码。
列4
import java.io.BufferedReader;
import java.io.FileReader;
import java.nio.charset.Charset;
public class Test
{
public static void main(String[] args) throws Exception {
System.out.println("file.encoding=" + System.getProperties().getProperty("file.encoding"));
System.out.println("默认是:" + Charset.defaultCharset().name());
FileReader fileReader = new FileReader("C:/UTF8.java");//UTF8.java 编码方式UTF-8
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuilder stringBuilder = new StringBuilder();
String temp = null;
while ((temp = bufferedReader.readLine()) != null) {
stringBuilder.append(temp);
}
System.out.println(stringBuilder.toString());
bufferedReader.close();
fileReader.close();
}
}
idea Maven项目:
文件编码设置:
file->setting
javac命令编码设置:
pom.xml
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |