gpt4 book ai didi

java - 从txt文件中搜索特定字符(Java)

转载 作者:行者123 更新时间:2023-12-02 05:22:38 25 4
gpt4 key购买 nike

我有一个很大的文本。 (字典)文件包含大约 100k + 单词,顺序如下:

树树阿斯德里 12

汽车汽车asdfei 123

鼠标 dasrkfi 333

板asdegvi 333

……

(ps.中间没有空行)

我想要做的是检查第三列(在本例中为 asderi 在第一行),如果这个单词中有字母“i”和“e”,则复制该行中的第一个单词(tree in这种情况)到一个新的txt。文件。我不需要完整的解决方案,但也许可以举例说明如何读取第三个单词并检查它的字母,如果它们是 TRUE,则打印该行中的第一个单词。

最佳答案

当涉及到大数据文件时,您想要逐行处理而不是将其全部读取到内存中,您可能希望从此开始逐行处理文件:

BufferedReader br = new BufferedReader(new FileReader(new File("C:/sample/sample.txt")));
String line;
while ((line = br.readLine()) != null) {
// process the line.
}
br.close();

一旦你有了这行,我打赌你将能够使用常见的字符串方法,如 .indexOf(.., .substring(..., .split) 来获取你想要的数据(特别是因为源文件似乎拥有结构良好的数据)。

因此,假设您的“列”始终由空格分隔,并且列中从来没有包含空格的单词,也没有丢失列,您可以使用 .split 捕获列,如下所示:

// this will be the current line of the file 
String s = "tree trees asderi 12";

String[] fragments = s.split(" ");

String thirdColumn = fragments[2];
boolean hasI = thirdColumn.contains("i");

String firstColumn = fragments[0];

System.out.println("Fragment: "+thirdColumn+" contains i: "+hasI+" thats why i want the first fragment: "+firstColumn);

但最终您将不得不尝试一下并使用字符串方法将其组合在一起,特别是对于此文件可能会出现的所有特殊情况;)

您可以使用您根据此提示编写的一些来源来更新您的“问题”,然后如果您遇到困难,请再次询问。

关于java - 从txt文件中搜索特定字符(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26377421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com