用Java写一个程序,从文件(c:\test.txt)中查出字符串”mobnet”出现的次数?

如题所述

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TxtCount {

/**
* @param args
*/
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("C:\\test.txt"));
StringBuilder sb = new StringBuilder();
while (true) {
String str = br.readLine();
if (str == null)
break;
sb.append(str);
}
Pattern p = Pattern.compile("mobnet");
Matcher m = p.matcher(sb);
int count = 0;
while(m.find()) {
count++;
}
System.out.println("mobnet一共出现了" + count + "次");
}

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-27
import java.io.*;

public class StringMatch {
public static void main(String args[]) {
int count = 0;
try {
FileReader in = new FileReader("C:/test.txt");
BufferedReader br = new BufferedReader(in);
String str = br.readLine();
// System.out.println(str);

while (str != null) {
String sToFind = "mobnet";

int index = -1;

while (str.indexOf(sToFind) != -1) {
index = str.indexOf(sToFind) + sToFind.length();
str = str.substring(index);
count++;
}

str = br.readLine();

}

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(count);
}

}

写得比较粗糙! 见谅!
第2个回答  2010-07-27
用正则匹配一下,最后能得到匹配集合中元素的个数;

在.net 中是这个思路,java也应该是大同小异吧
相似回答