Скажем, у меня есть следующий код:Создание, написание и редактирование же текстового файла в Java
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class EditFile {
public static void main(String[] args) {
try{
String verify, putData;
File file = new File("file.txt");
file.createNewFile();
FileWriter fw = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("Some text here for a reason");
bw.flush();
bw.close();
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
while(br.readLine() != null){
verify = br.readLine();
if(verify != null){
putData = verify.replaceAll("here", "there");
bw.write(putData);
}
}
br.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
Все, что я хотел сделать, чтобы написать что-то в текстовом файле, в моем случае «Некоторые текст здесь причина". Затем, чтобы прочитать данные из моего файла и, наконец, изменить текст из моего файла из «Некоторый текст здесь по причине» в «Некоторый текст там по какой-то причине». Я запускал код, но все, что происходит, это написать в моем файле «Некоторый текст здесь по какой-то причине».
Я попытался выяснить, что может быть неправильным в моем коде, но, к сожалению, это было напрасно. Любые советы или переписывание высоко ценятся от меня.
Проблема в том, что вы не могли прочитать из файла? –
То, что вы пытаетесь сделать, не имеет смысла - вы пытаетесь «bw.write» после того, как вы уже «bw.close();». Далее, в общем - зачем вы хотели бы сделать что-нибудь подобное? если вы уже знаете, что хотите изменить - пишите один раз в файл! (вместо того, чтобы писать, читать и переписывать) – alfasin
Это corect, я изменил и работал как-то. Проверьте мой последний комментарий из нижней части страницы, пожалуйста :). Спасибо, в любом случае. –