package CoreJava.day18_IO;
import java.io.FileInputStream;
import java.io.IOException;
/**
* Created by Intellij IDEA.
*
* @author zhudezhong
* @date 2021/6/29 21:42
*/
//写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数。
public class Demo09 {
public static void main(String[] args) {
test("briup/data/1.txt", "as");
}
public static void test(String pathName, String str) {
FileInputStream fis = null;
try {
//读取该文件中的内容
fis = new FileInputStream(pathName);
//将读到的内容转为字符串
byte[] bys = new byte[10];
//定义一个空字符串,用来接收读取到的字符串
StringBuffer strs = new StringBuffer();
int len = 0;
while ((len = fis.read(bys)) != -1) {
String s = new String(bys, 0, len);
strs.append(s);
}
System.out.println(strs);
//统计输入的字符串出现了多少次
int count = 0;
//得到该字符串第一次出现的位置索引
int index = strs.indexOf(str);
while (index != -1) {
count++;
index = strs.indexOf(str, index + str.length());
}
System.out.println(str + "出现了" + count + "次");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
fis = null;
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}