вот, используя эту функцию:
private static void write(String Swrite) throws IOException {
if (!StopWordRemoval.exists()) {
StopWordRemoval.createNewFile();
}
FileOutputStream fop = new FileOutputStream(file);
if (Swrite != null)
fop.write(Swrite.getBytes());
fop.flush();
fop.close();
}
моя программа получает строку от пользователя и записывает ее в файл. после того, как все пользователи закончили вводить свою информацию, я хочу удалить лишнюю информацию. если две точные линии, то одна удаляет. Сначала я попробовал приведенные ниже коды, но ничего не вышло:
private static void Normalize(File file) throws FileNotFoundException, IOException {
String tempLine2;
BufferedReader buf = new BufferedReader(new FileReader(file));
FileOutputStream fop = new FileOutputStream(temp, true);
String tempLine = null;
tempLine = buf.readLine();
fop.write(tempLine.getBytes());
BufferedReader buf2 = new BufferedReader(new FileReader(temp));
while ((tempLine = buf.readLine()) != null) {
while ((tempLine2 = buf2.readLine()) != null) {
if (!tempLine.trim().equals(tempLine2)) {
if (tempLine != null)
for (final String s : tempLine.split(" ")) {
fop.write(s.getBytes());
fop.write(System.getProperty("line.separator").getBytes());
}
}
}
}
}
моя идея во второй функции была следующей: записать первую строку в новый файл, затем сравнить с ним вторую строку, если отличается от записи, затем сравнить третью строку с обоими ... но, похоже, моя функция отстой любая помощь?