Hallo,
ich habe vor kurzem erst angefangen Java zu lernen und hänge nun an einem kleinen Programm fest. Es ist wahrscheinlich total simpel, aber ich komm nicht drauf.
Das Programm soll 2 csv Dateien abgleichen und Daten die in Datei1 vorhanden sind aber in Datei2 nicht in einer 3. Datei ausgeben.
Hier ist was ich hab:
Die Frage ist: Wie geb ich das jetzt aus?
ich habe vor kurzem erst angefangen Java zu lernen und hänge nun an einem kleinen Programm fest. Es ist wahrscheinlich total simpel, aber ich komm nicht drauf.
Das Programm soll 2 csv Dateien abgleichen und Daten die in Datei1 vorhanden sind aber in Datei2 nicht in einer 3. Datei ausgeben.
Hier ist was ich hab:
Java:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashSet;
import java.util.Set;
public class Main {
public static Set<String> readCSVFile(String fileName) throws FileNotFoundException, IOException {
FileReader readerFile = new FileReader(fileName);
BufferedReader me = new BufferedReader(readerFile);
Set<String> ids = new HashSet<>();
String line;
String out[] = null;
while ((line = me.readLine()) != null) {
out = line.split(";");
String id = out[0].trim();
ids.add(id);
}
return ids;
}
public static void compareWithCSVFile(String fileName, Set<String> ids, BufferedWriter bw) throws FileNotFoundException, IOException {
FileReader readerFile = new FileReader(fileName);
BufferedReader me = new BufferedReader(readerFile);
String line;
String out[] = null;
while ((line = me.readLine()) != null) {
out = line.split(";");
String id2 = out[0].trim();
boolean contains = ids.contains(id2);
if (!contains) {
}
}
}
public static void main(String[] args) throws FileNotFoundException, IOException {
String fileName1 = "D:\\Users\\S1_awpvp\\Desktop\\Test\\GOAE_Leistung.csv";
String fileName2 = "D:\\Users\\S1_awpvp\\Desktop\\Test\\GOAE_Preis.csv";
String filename3 = "D:\\Users\\S1_awpvp\\Desktop\\Test\\difference.csv";
BufferedWriter bw = null;
FileWriter fw = null;
try {
String content = "content";
fw = new FileWriter(filename3);
bw = new BufferedWriter(fw);
bw.write(content);
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (bw != null)
bw.close();
if (fw != null)
fw.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
Set<String> idSet = readCSVFile(fileName1);
System.out.println(idSet);
compareWithCSVFile(fileName2, idSet, bw);
}
public static void write( String filename, String services) {
}
}