如何在文件中搜索存储在 List<string> 中的句子(Java)

Posted

技术标签:

【中文标题】如何在文件中搜索存储在 List<string> 中的句子(Java)【英文标题】:How to search the sentence stored in a List<string> in a file (Java) 【发布时间】:2018-04-29 19:00:53 【问题描述】:

我有两个文件 itemets.txt 和 combination.txt

itemsets.txt 包含客户购买的商品的详细信息。

Butter Bread Jam 
Bread Jam Cheese Tea 
Bread Eggs Coffee 
Tea Coffee Biscuits 
Biscuits Tea 
Nutella Cheese Eggs 
Maggie Coffee 
Eggs Jam Tea 
Maggie Tea 
Biscuits Coffee 
Bread Biscuits Cheese 
Biscuits Nutella 
Coffee Eggs 
Jam Biscuits 
Eggs Bread Biscuits

combination.txt 包含支持度大于平均支持度的项目的所有可能组合。

 Bread 
 Jam 
 Bread Jam 
 Cheese 
 Bread Cheese 
 Jam Cheese 
 Bread Jam Cheese 
 Tea 
 Bread Tea 
 Jam Tea 
 Bread Jam Tea 
 Cheese Tea 
 Bread Cheese Tea 
 Jam Cheese Tea 
 Bread Jam Cheese Tea 
 Coffee 
 Bread Coffee 
 Jam Coffee 
 Bread Jam Coffee 
 Cheese Coffee 
 Bread Cheese Coffee 
 Jam Cheese Coffee 
 Bread Jam Cheese Coffee 
 Tea Coffee 
 Bread Tea Coffee 
 Jam Tea Coffee 
 Bread Jam Tea Coffee 
 Cheese Tea Coffee 
 Bread Cheese Tea Coffee 
 Jam Cheese Tea Coffee 
 Bread Jam Cheese Tea Coffee 

我想在 itemets.txt 文件中搜索组合。如果combination.txt 中的字符串存在于文件itemets.txt 中,那么该字符串将被复制到一个新的.txt 文件中。

我应该如何进行?

【问题讨论】:

您能否将问题中的图片转换为代码文本? @Mulliganaceous 请立即查看 【参考方案1】:

读取itemsets.txt 的文件内容并将其存储在一个数组中。现在从combinaton.txt 中读取每一行并在itemsets.txt 中查找匹配项。如果匹配,您可以将其存储在新文件中。谷歌的标准文件读写代码应该很容易获得。 例子: 输入:

FileReader fr=new FileReader(FILENAME);
BufferedReader br =new BufferedReader(fr);

现在 br.readLine() 应该为您提供输入。 输出:

String str = "Hello";
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
writer.write(str);

希望对你有帮助。

【讨论】:

以上是关于如何在文件中搜索存储在 List<string> 中的句子(Java)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# List 中存储 IP 地址列表以使其也可搜索子网?

Java 随机取出数组中n条不重复的数据

关于list集合存储null的问题

如何将 List<> 数组中的数据保存到文本文件(C#)?

java ArrayList 如何读取文件中的数据,并且搜索

如何在结构的`std::list`中搜索?