97 lines
2.6 KiB
Java
97 lines
2.6 KiB
Java
|
package company;
|
||
|
|
||
|
import java.io.*;
|
||
|
|
||
|
public class DataSaver {
|
||
|
|
||
|
public DataSaver(String fileName) {
|
||
|
_fileName = fileName;
|
||
|
}
|
||
|
|
||
|
public void deleteFileIfExists() {
|
||
|
File fileToDelete = new File(_fileName);
|
||
|
|
||
|
if (fileToDelete.exists())
|
||
|
fileToDelete.delete();
|
||
|
}
|
||
|
|
||
|
public void deleteRowIfPeselExists(String pesel) throws IOException {
|
||
|
File file = new File(_fileName);
|
||
|
if (!file.exists())
|
||
|
return;
|
||
|
|
||
|
FileReader fileReader = new FileReader(file);
|
||
|
BufferedReader bufferedReader = new BufferedReader(fileReader);
|
||
|
int lineNumber = 0;
|
||
|
int lineToDelete = -1;
|
||
|
String line = null;
|
||
|
String lines = "";
|
||
|
boolean containsPesel = false;
|
||
|
|
||
|
while (true) {
|
||
|
lineNumber++;
|
||
|
line = bufferedReader.readLine();
|
||
|
if (line == null)
|
||
|
break;
|
||
|
|
||
|
if (line.contains(pesel)) {
|
||
|
containsPesel = true;
|
||
|
continue;
|
||
|
}
|
||
|
|
||
|
lines += line + "\n";
|
||
|
}
|
||
|
|
||
|
if (!containsPesel)
|
||
|
return;
|
||
|
|
||
|
fileReader.close();
|
||
|
bufferedReader.close();
|
||
|
|
||
|
FileWriter fileWriter = new FileWriter(file, false);
|
||
|
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
|
||
|
bufferedWriter.write(lines);
|
||
|
|
||
|
bufferedWriter.close();
|
||
|
fileWriter.close();
|
||
|
}
|
||
|
|
||
|
public void savePersonalDataToFile(String city, String personalData) throws IOException {
|
||
|
File file = new File(_fileName);
|
||
|
FileWriter fileWriter = new FileWriter(file, true);
|
||
|
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
|
||
|
|
||
|
bufferedWriter.write(city + ", " + personalData + "\n");
|
||
|
|
||
|
bufferedWriter.close();
|
||
|
fileWriter.close();
|
||
|
}
|
||
|
|
||
|
private int getLineNumberWithText(File file, String stringToSearch) throws IOException {
|
||
|
FileReader fileReader = new FileReader(file);
|
||
|
BufferedReader bufferedReader = new BufferedReader(fileReader);
|
||
|
String line = null;
|
||
|
int lineNumber = 0;
|
||
|
int lineToDelete = -1;
|
||
|
|
||
|
while (true) {
|
||
|
lineNumber++;
|
||
|
line = bufferedReader.readLine();
|
||
|
if (line == null)
|
||
|
break;
|
||
|
|
||
|
if (line.contains(stringToSearch)) {
|
||
|
lineToDelete = lineNumber;
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
fileReader.close();
|
||
|
bufferedReader.close();
|
||
|
|
||
|
return lineToDelete;
|
||
|
}
|
||
|
|
||
|
private String _fileName;
|
||
|
}
|