Java: Plik CSV Łatwy odczyt / zapis
Pracuję nad programem, który wymaga szybkiego dostępu do pliku arkusza kalkulacyjnego rozdzielanego przecinkami CSV. Do tej pory byłem w stanie z niego łatwo odczytać za pomocą BufferedReader. Jednak teraz chcę móc edytować odczytane dane, a następnie wyeksportować je z powrotem do pliku CSV.
Arkusz kalkulacyjny zawiera nazwiska, numery telefonów, adresy e-mail itp. A program wyświetla dane wszystkich użytkowników, a po ich kliknięciu wyświetla stronę z bardziej szczegółowymi informacjami, również pobraną z CSV. Na tej stronie możesz edytować dane i chcę móc kliknąć przycisk „Zapisz zmiany”, a następnie wyeksportować dane z powrotem do odpowiedniej linii w CSV - lub usunąć stary i dodać nowy.
Nie jestem zbyt dobrze zaznajomiony z używaniem BufferedWriter, czy cokolwiek to jest, powinienem używać.
Zacząłem tworzyć niestandardową klasę o nazwie FileIO. Zawiera zarówno BufferedReader, jak i BufferedWriter. Do tej pory ma metodę, która zwraca bufferedReader.readLine (), zwaną read (). Teraz chcę funkcji o nazwie write (String line).
public static class FileIO {
BufferedReader read;
BufferedWriter write;
public FileIO (String file) throws MalformedURLException, IOException {
read = new BufferedReader(new InputStreamReader (getUrl(file).openStream()));
write = new BufferedWriter (new FileWriter (file));
}
public static URL getUrl (String file) throws IOException {
return //new URL (fileServer + file).openStream()));
FileIO.class.getResource(file);
}
public String read () throws IOException {
return read.readLine();
}
public void write (String line) {
String [] data = line.split("\\|");
String firstName = data[0];
// int lineNum = findLineThatStartsWith(firstName);
// write.writeLine(lineNum, line);
}
};
Mam nadzieję, że ktoś ma pomysł, jak mogę to zrobić?