问题遇到的现象和发生背景
JAVA从txt导入文字,设置-Dfile.encoding=gbk后,题目文字是奇怪的字符。
问题相关代码,请勿粘贴截图
public void init() throws IOException {
InputStreamReader isr = new InputStreamReader(new FileInputStream("exam.txt"));
int ch;
int i = 0;
while ((ch = isr.read()) != -1) {
String qItem = "";
do {
qItem += (char) ch;
} while ((ch = isr.read()) != 13);
isr.read();
System.out.println(qItem);
String[] qItemSplit = qItem.split("#", 3);
Question q = new Question(qItemSplit[0], qItemSplit[1], qItemSplit[2].split("#"));
qList[i++] = q;
}
//释放
isr.close();
}
txt文本中存放
树最适合用来表示#C#有序元素#无序元素#元素之间具有分支层次关系的数据#元素之间无联系的数据
按照二叉树的定义,具有3个结点的二叉树有种#C#3#4#5#6
有10个叶子结点的二叉树中有个度为2的结点#B#8#9#10#11
运行结果及报错内容
我的解答思路和尝试过的方法
设置-Dfile.encoding=gbk未能达到预期效果
我想要达到的结果
正常显示字符。