在Java中从文件输入数据时如何停止扫描仪更改字节?
作者:互联网
我正在使用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-util-scanner,java 来源: https://codeday.me/bug/20191201/2082744.html