读取完整的文件,而不使用java中的循环
可能重复:
如何从文件的内容创buildJavastring
将整个文本文件转换为Java中的string
我正在尝试使用FileReader读取文件的内容。 但我想阅读文件,而不是逐行阅读。 是否有可能读取整个文件没有循环。 我正在使用下面的代码
try { File ff=new File("abc.txt"); FileReader fr=new FileReader(ff); String s; while(br.read()!=-1) { s=br.readLine(); } } catch(Exception ex) { ex.printStackTrace(); } 如果文件很小 ,则可以一次读取整个数据:
 File file = new File("a.txt"); FileInputStream fis = new FileInputStream(file); byte[] data = new byte[(int) file.length()]; fis.read(data); fis.close(); String str = new String(data, "UTF-8"); 
Java 7一线解决scheme
 List<String> lines = Files.readAllLines(Paths.get("file"), StandardCharsets.UTF_8); 
要么
  String text = new String(Files.readAllBytes(Paths.get("file")), StandardCharsets.UTF_8); 
如果您使用的是JDK5或更高版本,则可以尝试使用扫描仪 。
 Scanner scan = new Scanner(file); scan.useDelimiter("\\Z"); String content = scan.next(); 
或者你也可以使用番石榴
 String data = Files.toString(new File("path.txt"), Charsets.UTF8); 
 如果您正在使用Java 5/6,则可以使用Apache Commons IO读取文件以string。  org.apache.commons.io.FileUtils类包含几个读取文件的方法。 
 例如使用FileUtils#readFileToString方法: 
 File file = new File("abc.txt"); String content = FileUtils.readFileToString(file);