2016-05-19 7 views
0

私は.txtファイルのパスを持っていて、すべてのデータを1つのStringに取得したい場合は、 とにかくできますか?io.Fileを使用してファイルのデータを読み取る方法は?

私はそこjava.ioパッケージ内のファイル全体を読み込みます単一の方法はませんが、あなたは非常に簡単でラインを読んで、BufferedReaderのを使用してそれを行うことができますio.File API

+1

これは私が推測することが多い回答されています:http://stackoverflow.com/questions/4716503/reading-a-plain-text-file-in-java – BenBen

答えて

1

を発見し、適切な方法をdidntの完全なコンテンツを取得するためにそれらを '\ n'と一緒に追加します。例えば:

String line = null; 
StringBuilder sb = new StringBuilder(""); 

BufferedReader br = new BufferedReader("c:/path/yourfile.txt"); 
while ((line = br.readLine()) != null) { 
    sb.append(line).append("\n"); 
} 
// you may probably need to remove the last '\n' before toString() 

String fileContent = sb.toString(); 
0

のいずれかを使用することです、私はJava.util.Scannerクラスを使用し、それに成功を収めています。私のようなヘルパーメソッドを書いてみます:あなたは以下のように単一のStringを構築するためにString.join(..)を使用することができますよりも、あなたは、リストのあなたのtxtファイルを読むためにFiles.readAllLines(Path file)を使用することができます

public String getFileAsString(String pathName){ 
    StringBuilder fullTxtFileAsString = new StringBuilder(); 
    Scanner in = new Scanner(new File(pathName)); 
    while(in.hasNext()){ 
    fullTxtFileAsString.append(in.nextLine); 
    fullTxtFileAsString.append("\n"); 
    } 
    return fullTxtFileAsString.deleteCharAt(fullTxtFileAsString.size() - 1). 
    toString(); //Removes the extra newline character 
} 
0

::

List<String> lines = Files.readAllLines(Paths.get("file.txt")); 
String s = String.join("", lines); 
System.out.println(s); 

これが助けることを望みます。

関連する問題