2016-10-22 6 views
0

初めてリストを使用しようとしています。文字列について検索しているtxtファイルがあり、新しいファイルを検索した結果を書き込む必要があります。Javaを使用してファイルに書き込む

画像を確認してくださいは、私の仕事は、2つの出力ファイルに入力ファイルの行を確認し取得することであるenter image description here

を取り付けました。

そして、これは私のコードです:

import java.io.*; 
import java.util.Scanner; 

public class TestingReport1 { 
public static void main(String[] args) throws Exception { 

    File test = new File("E:\\test2.txt"); 
    File Result = new File("E:\\Result.txt"); 

    Scanner scanner = new Scanner(test); 
    while (scanner.hasNextLine()) { 
     String line = scanner.nextLine(); 
     if(line.contains("Visit Count")|| line.contains("Title")) { 
      System.out.println(line); 
     } 
    } 
} 
} 

は、私が何をすべきか。

編集:このコードの結果をテキストファイルに書き込むにはどうすればよいですか? EDIT2:訪問回数として、私は戻って結果を得た

public static void main(String[] args) throws Exception { 
    // TODO code application logic here 

    File test = new File("E:\\test2.txt"); 
    FileOutputStream Result = new FileOutputStream("E:\\Result.txt"); 

    Scanner scanner = new Scanner(test); 
    while (scanner.hasNextLine()) { 
     String line = scanner.nextLine(); 
     if(line.contains("Visit Count")|| line.contains("Title")) { 
      System.out.println(line); 
      Files.write(Paths.get("E:\\Result.txt"), line.getBytes(), StandardOpenOption.APPEND); 
     } 
    } 
} 

:今すぐ次のコードを使用して

1を、と私は整数として、この番号を取り戻すしたい、それは可能ですか?

+0

いい意味ですか? if文を次のように変更してください。 'if(line.contains( "Visit Count")|| line.contains( "Title")){System.out.println(line);} ' – 3kings

+0

Title" Java "は本当に誤解を招き、不明瞭です。JavaのListクラスを参照することもできます。あなたのタイトルを特定するようにしてください。 –

+0

@AleksandarStefanovićリストを使って、両方の行を別のファイルに書き戻したいです! –

答えて

1

Files、特にreadAllLinesおよびwriteをご覧ください。これら2つのメソッド呼び出しの間の入力をフィルタリングすると、それは次のようになります。

// Read. 
List<String> input = Files.readAllLines(Paths.get("E:\\test2.txt")); 
// Filter. 
String output = input.stream() 
     .filter(line -> line.matches("^(Title.*|Visit Count.*)")) 
     .collect(Collectors.joining("\n")); 
// Write. 
Files.write(Paths.get("E:\\Result.txt"), output.getBytes()); 
関連する問題