2016-09-09 16 views
-2

私は大きなtxtファイルを持っており、それを文字単位で読みます。すべての文字がStringBuilderに追加されるので、テキストファイル全体を表すStringという大きな文字が表示されます。文字列から文字列を構築する最も良い方法

私の質問はこれを行うより効率的な方法はありますか?パフォーマンスはファイルのサイズのために重要です。

EDIT: ファイルを文字単位で文字列に読み込みたいだけではありません。私はそれぞれの文字を計算し、文字列に何かを書きたいのですが、実際に文字で読み込む必要があります。

JSON Parserのようなものを作ろうとしています。 JSONファイルを読み取り、階層をコンソールに出力します。したがって、パーサーは文字単位でファイルを読み取り、計算して大きな文字列を作成します。文字列から文字列を作成する最速の方法を知りたいだけです。

+0

のようなものは、それは文字によるファイルの文字を読み出す必要がありますか? –

+0

これはあなたが得ることができるようにX \ Yの問題です –

+0

別の[重複](http://stackoverflow.com/questions/22979389/best-way-to-read-a-large-file-containing-a-single -line-string-in-java-io) –

答えて

-1

あなたが行うことができます

public String readTextFile(File file) { 
     StringBuilder sb = new StringBuilder(); 
     try(BufferedReader br = new BufferedReader(new FileReader(file))){ 
      String line; 
      while ((line = br.readLine()) != null){ 
       sb.append(line); 
      } 
     } 
     return sb.toString(); 
} 
+0

を入力してください。だからあなたは 'StringBuilder'を宣言する必要はありません。また、java 8では、tryブロック内のコードを 'fileContent = br.lines()。collect(Collectors.joining(" \ n "));' –

+0

に置き換えることができます。なぜdownvoteですか?私のコードは正しい – DrKarl

関連する問題