簡體   English   中英

Java用BufferedReader比較文件

[英]Java comparing files with BufferedReader

這是我要嘗試的方法:

static void filter( BufferedReader orders, BufferedReader in,
        BufferedWriter out ) throws IOException

目的是使用in閱讀器閱讀文本文件,然后使用訂單閱讀器檢查句子中是否包含存儲在另一個文本文件中的關鍵字,如果句子中確實包含這些關鍵字,則將其寫下來在另一個文本文件中沒有作家。

到目前為止,我已經做到了:

static void filter( BufferedReader orders, BufferedReader in,
        BufferedWriter out ) throws IOException{

    BufferedReader ordersf = new BufferedReader(new FileReader("order_filter.txt"));
    BufferedReader inf = new BufferedReader(new FileReader("hamlet.txt"));
    BufferedWriter outf = new BufferedWriter(new FileWriter("out_filter.txt"));

    String line = inf.readLine();

    while(line != null){
        String filter = ordersf.readLine();
        if(filter.equals(line))
            outf.write("    "+line);
    }
    ordersf.close();
    inf.close();
    outf.close();
}

現在,我對如何比較包含的關鍵詞不知道order_filter.txt在句子hamlet.txt我希望得到一些幫助。

如果您想以骯臟的方式進行操作,則可以從ordersf中拆分單詞,然后查看每個單詞是否是句子的子字符串。 因此,假設您的過濾器包含由空格分隔的單詞,那么您可以執行以下操作:

String[] filter_words = filter.split(" ");

for(String filter_word : filter_words) {
    if(line.toLowerCase().contains(filter_word.toLowerCase())) {
        <<do something>>;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM