import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class test10 {
public static void main(String[] args) throws IOException {
List<String> list = new ArrayList<String>();
list = file1("C:\\Users\\admin\\Desktop\\test\\df.txt");
list.removeAll(file2("C:\\Users\\admin\\Desktop\\test\\wf.txt"));
System.out.println("file1-fil2=" + list.size());
Input(list, "C:\\Users\\admin\\Desktop\\test\\123.txt");
System.out.println("PrintWriter_OK");
}
public static List<String> file1(String url) throws IOException {
List<String> list = new ArrayList<String>();
File file = new File(url);
FileReader fileReader = new FileReader(file);
BufferedReader br = new BufferedReader(fileReader);
if (file.exists()) {
String lineContent = null;
while ((lineContent = br.readLine()) != null) {
list.add(lineContent.substring(10, 43).replace("\"\t\"", ","));
}
}
br.close();
fileReader.close();
System.out.println("file1:" + list.size());
return list;
}
public static List<String> file2(String url) throws IOException {
File file = new File(url);
FileReader fileReader = new FileReader(file);
BufferedReader br = new BufferedReader(fileReader);
int a2;
List<String> list = new ArrayList<String>();
if (file.exists()) {
String lineContent = null;
while ((lineContent = br.readLine()) != null) {
if (lineContent.contains("DELIVRD")) {
a2 = Integer.parseInt((lineContent.substring(12, 13)));
for (int i = 0; i < a2; i++) {
list.add(lineContent.substring(0, 11) + "," + lineContent.substring(14, 33));
}
}
}
}
br.close();
fileReader.close();
System.out.println("file2:" + list.size());
return list;
}
public static synchronized void Input(List<String> list, String url) {
FileWriter fw = null;
try {
File f = new File(url);
fw = new FileWriter(f, true);
PrintWriter pw = new PrintWriter(fw);
for (String s : list) {
pw.println(s);
}
pw.flush();
fw.flush();
pw.close();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}