Файлы java, заменяющие символы - PullRequest
0 голосов
/ 15 октября 2010

Я должен проверить текстовый документ, существует ли он или нет, а затем я должен заменить букву, в которой говорится от а до о.Я сделал первую часть, как заменить char

class FDExists{
  public static void main(String args[]){
    File file=new File("trial.java");
    boolean exists = file.exists();
    if (!exists) {

      System.out.println("the file or directory you are searching does not exist : " + exists);

    }else{

      System.out.println("the file or directory you are searching does exist : " + exists);
    }
  }
}

Это я сделал

1 Ответ

2 голосов
/ 15 октября 2010

Вы не можете сделать это в одной строке кода.

Вы должны прочитать файл (с помощью InputStream), изменить содержимое и записать его в файл (с помощью OutputStream).

Пример кода.Я пропустил блоки try / catch / finally для лучшего понимания алгоритма, но в реальном коде вы должны добавить тезисные блоки с правильным указанием освобождения ресурсов.Вы также можете заменить «\ n» на системный разделитель строк и заменить «a» и «o» параметрами.

public void replaceInFile(File file) throws IOException {

    File tempFile = File.createTempFile("buffer", ".tmp");
    FileWriter fw = new FileWriter(tempFile);

    Reader fr = new FileReader(file);
    BufferedReader br = new BufferedReader(fr);

    while(br.ready()) {
        fw.write(br.readLine().replaceAll("a", "o") + "\n");
    }

    fw.close();
    br.close();
    fr.close();

    // Finally replace the original file.
    tempFile.renameTo(file);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...