2016-06-16 8 views
-4

私はArrayList<String>に3語( "1"、 "2"、 "3")が含まれています。文字列のファイルがあります。私はArrayListにちょうど2つの項目を含むファイル内の文字列を見つける必要があります。これどうやってするの?ファイルから特定の文字列を取得する

+4

私たちと共有してくれてありがとう。実装中に特定の問題が発生した場合は、その情報を含めてください。あなたのプログラムに幸運を祈る! – Zircon

+0

ファイルを読み込むためにjava Scannerを使用できます。ループを実行して状態を確認できる各文字列については、[http://stackoverflow.com/questions/13185727/reading-a-txt-file-using-scanner-class -in-java] – GOXR3PLUS

+0

コードは次のようになります。 – nesher

答えて

-1

まず、解析する文字列/コンテンツを読み取る必要があります。その後、あなたのArrayListからキーワードを数えることができます。それがコンテンツに含まれているかどうかをテストする各キーワードについて、この場合はカウントが増加します。カウントが2の場合は、あなたの文字列が見つかりました。

public ArrayList<String> findStrings(ArrayList<String> searchStrings) { 
    ArrayList<String> foundStrings = new ArrayList<>(); 
    while (hasMoreLines()) { 
     String content = getNextString(); 
     if (countStrings(content, searchStrings) == 2) { 
      foundStrings.add(content); 
     } 
    } 
    return foundStrings; 
} 

private int countStrings(String content, ArrayList<String> searchStrings) { 
    int count = 0; 
    for (String searchString : searchStrings) { 
     if (content.contains(searchString)) { 
      count++; 
     } 
    } 
    return count; 
} 

hasMoreLinesgetNextString不足していると、BufferedReaderとperferable実装する必要があります。

+0

Rolandありがとうございます。あなたのアドバイスは私を助けました。 – nesher

関連する問題