我试过了:
String input = "";
FileReader reader = new FileReader(inputFileName);
Scanner in= new Scanner(reader);
input = in.nextLine();
这不起作用,因为它只读取第一行,所以我改为:
String input = "";
FileReader reader = new FileReader(inputFileName);
Scanner in= new Scanner(reader);
while(in.hasNextLine()){
input = input + in.nextLine();
}
它也不起作用。因为我的文件就像一个带有几个返回行的手册,它看起来像这样:
Hello world,
你应该编码
经常java 那就是它!此致 未知?
注意:我想停止包括空格和返回提要在内的所有字符,并将所有字符转换为字符串,这可能吗?感谢您提供的所有指导
答案 0 :(得分:2)
您可以使用正则表达式使用Scanner#useDelimiter
方法无循环将整个文件读入字符串:
String fileData = new Scanner(new File(inputFileName)).useDelimiter("\\Z").next();
答案 1 :(得分:1)
使用StringBuffer sbf = new StringBuffer(); // java.lang.StringBuffer for this
在while(in.hasNextLine())
循环内:
sbf.append(in.nextLine());
完成后,使用sbf.toString()
获取所需的字符串。