package com.beihui.controller.wzGoods;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Test {
private final static int ID_NAME=12;
private final static int ID_SIZE=10;
public static void main(String[] args){
for(int i=1;i<=13;i++) {
System.out.println("--------开始获取第"+i+"个文件内容----------");
Set<String> dataSet = checkFile(new File("E://file/page"+i+".txt"));
System.out.println("--------在第"+i+"个文件得到了"+dataSet.size()+"个id----------");
writeFile(dataSet);
}
System.out.println("--------文件存储完毕----------");
}
private static void writeFile(Set<String> dataSet) {
File file = new File("E://file/id.txt");
FileOutputStream fos=null;
try{
if(!file.exists()){
file.createNewFile();
}
String str="";
fos=new FileOutputStream(file,true);
for(String data : dataSet){
str+ = data+",";
}
fos.write(str.getBytes());
}catch(IOException e){
System.out.println("--------IO异常----------");
}finally {
}
}
public static Set<String> checkFile(File file) {
String errStr = "";
Set<String> sets = new HashSet<>();
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
byte[] buf = new byte[1024];
int len = 0;
while ((len = fis.read(buf)) != -1) {
String str = new String(buf);
int i = str.indexOf("item.msgId");
while (i!=-1){
errStr=str;
int start = str.indexOf("item.msgId")+ID_NAME;
if(start==11||str.length()-start<10){
i=-1;
continue;
}
String id = str.substring(start,start+ID_SIZE);
str = str.substring(start+ID_SIZE);
sets.add(id);
}
}
return sets;
} catch (Exception e) {
System.out.println(errStr);
e.printStackTrace();
}
return null;
}
}
通过indexof查询文本中匹配的内容
最新推荐文章于 2021-09-23 16:27:46 发布