Java 从文件中提取单词
基本上,我有一个文件,其中包括频繁的挪威语单词。单词按以下模式存储Java 从文件中提取单词,java,file,Java,File,基本上,我有一个文件,其中包括频繁的挪威语单词。单词按以下模式存储 1。jeg 782578 2.数据段742951 3.er 718645 4.杜623395 5.ikke 436196 从左到右:第一个是列表号,中间是我要提取和保存的单词,后面是数字计数。我想提取文档中没有数字列表或数字计数的单词。当然,我可以手动完成这项工作,但列表非常庞大,包含5000个单词。因此,我正在寻找一种使用Java实现这一点的有效方法 基本上我只能读写Java文件。因此,如果您对完成这项任务有任何想法,如果您
1。jeg 782578
2.数据段742951
3.er 718645
4.杜623395
5.ikke 436196
从左到右:第一个是列表号,中间是我要提取和保存的单词,后面是数字计数。我想提取文档中没有数字列表或数字计数的单词。当然,我可以手动完成这项工作,但列表非常庞大,包含5000个单词。因此,我正在寻找一种使用Java实现这一点的有效方法
基本上我只能读写Java文件。因此,如果您对完成这项任务有任何想法,如果您能与我分享,我将不胜感激。尽管您知道编程并不总是试图将这些知识应用于所有环境。
您可以简单地用逗号替换所有空格,并将其保存为.csv文件。从excell或某个电子表格应用程序打开它。删除不需要的列。将它存回高效地执行类似操作的诀窍是认识到不需要将整个文件读入内存即可对其进行操作。您可以创建一个循环,该循环一次读取一行输入,并执行创建一行输出所需的任何工作:
Scanner scanner = new Scanner(new File("input.txt"));
PrintWriter writer = new PrintWriter("output.txt");
while (scanner.hasNextLine()) {
String line = scanner.nextLine(); // read a line from the input file
writer.println(line.split(" ")[1]); // write a line to the output file
}
scanner.close();
writer.close();
这将允许您对任何大小的文件进行逐行修改。(抱歉,现在还不能评论)
5000不是那么大。
我想你是在windows上
您可以使用记事本++之类的编辑器使用正则表达式进行搜索和替换(您也可以在java中使用正则表达式)。
(这是记事本++的教程之一:)
或者正如“Thusitha Thilina Dayaratn”建议的那样,将文件导入Excel类型的程序。
在导入过程中,您只需指定数据是空格/制表符分隔的。我们试试这样的方法
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream("pathOfYourTextFile/textFile.txt")));
PrintStream out = null;
while(true)
{
String line = br.readLine();
if(line PrintStream out== null)
break;
else {
String newline = line.replaceAll("-?\\d+.","").trim();
out = new PrintStream(new FileOutputStream("outputFile.txt"));
out.println(newline);
}
}
out.close();
如果你知道如何阅读文件,至少在问问题之前先尝试一下,问题出在哪里?
我想摘录
摘录什么?摘录中间的单词我们没有时间为您编写代码。在这里发布您的代码..好吧,这可能会被发布为评论这不是我兄弟,请不要误解,这只适用于一次性解决方案,但如果这是一些自动化过程的一部分,就会变得更加困难。这是最有效的方法。除非你每天都这么做。而且很快。这比学习java要好得多。在Excel中打开并保存文件有多困难?您可能可以使用宏来自动化该过程。(示例如下:)我正在寻找一种使用Java的有效方法。
会让我认为他们的任务需要他们使用Java。我会尝试一下这个方法。