【发布时间】:2014-03-26 05:47:12
【问题描述】:
如何使用 java 从包含特定单词的文件中打印行?
想要创建一个简单的实用程序,允许在文件中查找单词并打印出现给定单词的完整行。
我已经做了这么多来计算出现次数,但不知道要打印包含它的行...
import java.io.*;
public class SearchThe {
public static void main(String args[])
{
try
{
String stringSearch = "System";
BufferedReader bf = new BufferedReader(new FileReader("d:/sh/test.txt"));
int linecount = 0;
String line;
System.out.println("Searching for " + stringSearch + " in file...");
while (( line = bf.readLine()) != null)
{
linecount++;
int indexfound = line.indexOf(stringSearch);
if (indexfound > -1)
{
System.out.println("Word is at position " + indexfound + " on line " + linecount);
}
}
bf.close();
}
catch (IOException e)
{
System.out.println("IO Error Occurred: " + e.toString());
}
}
}
【问题讨论】:
-
您可以使用代表每一行的字符串实例中的
contains方法。如果您想避免误报匹配,您可以使用带有单词边界的正则表达式。无论如何,请描述您的代码有什么问题,以便我们帮助您解决它。 -
到目前为止你尝试过什么?请给一些代码...
-
你能逐行读取文件吗?如果是,为什么没有任何代码存在?
-
我是java初学者..也是这个网站..所以不知道如何发布问题...但我愿意努力工作,所以想知道各种解决上述问题的方法...
标签: java java-io file-handling