我正在使用 Java 中的 Scanner 实用程序从文件中输入数据,如下所示:
File file = new File("mazes.txt");
Scanner scan = new Scanner(file);
scan.useDelimiter("__________\n");
String record = scan.next();
但它正在将某些字节更改为其他字节。例如,记录字符串应该是一个具有十六进制值 80
的字节,Scanner 似乎将其转换为一个具有十六进制值 ac
的字节。如何在不像这样切换字节的情况下从文件中输入记录?
最佳答案
来自构造函数的文档:
Bytes from the file are converted into characters using the underlying platform's default charset.
如果您的文件有其他编码,您必须使用(例如):
Scanner scan = new Scanner(file,"UTF-8");
或
Scanner scan = new Scanner(file,"ISO8859-1");
等
关于java - 在 Java 中从文件输入数据时如何阻止扫描仪更改字节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9401240/