将文件的文本作为字符串返回?

时间:2011-03-08 23:27:29

标签: java string file text return

  

可能重复:
  How to create a Java String from the contents of a file

是否可以处理多行文本文件并将其内容作为字符串返回?

如果可以,请告诉我如何。


如果您需要更多信息,我正在玩I / O.我想打开一个文本文件,处理它的内容,将其作为String返回,并将textarea的内容设置为该字符串。

有点像文本编辑器。

4 个答案:

答案 0 :(得分:2)

使用apache-commons FileUtils的readFileToString

答案 1 :(得分:0)

的内容
String result = "";

try {
  fis = new FileInputStream(file);
  bis = new BufferedInputStream(fis);
  dis = new DataInputStream(bis);

  while (dis.available() != 0) {

    // Here's where you get the lines from your file

    result += dis.readLine() + "\n";
  }

  fis.close();
  bis.close();
  dis.close();

} catch (FileNotFoundException e) {
  e.printStackTrace();
} catch (IOException e) {
  e.printStackTrace();
}

return result;

答案 2 :(得分:0)

在这里查看java教程 - http://download.oracle.com/javase/tutorial/essential/io/file.html

Path file = ...;
InputStream in = null;
StringBuffer cBuf = new StringBuffer();
try {
    in = file.newInputStream();
    BufferedReader reader = new BufferedReader(new InputStreamReader(in));
    String line = null;

    while ((line = reader.readLine()) != null) {
        System.out.println(line);
        cBuf.append("\n");
        cBuf.append(line);
    }
} catch (IOException x) {
    System.err.println(x);
} finally {
    if (in != null) in.close();
}
// cBuf.toString() will contain the entire file contents
return cBuf.toString();

答案 3 :(得分:0)

String data = "";
try {
    BufferedReader in = new BufferedReader(new FileReader(new File("some_file.txt")));
    StringBuilder string = new StringBuilder();
    for (String line = ""; line = in.readLine(); line != null)
        string.append(line).append("\n");
    in.close();
    data = line.toString();
}
catch (IOException ioe) {
    System.err.println("Oops: " + ioe.getMessage());
}

首先记得import java.io.*

这将用\ n替换文件中的所有换行符,因为我认为没有办法获取文件中使用的分隔符。