Javaプログラムと同じフォルダにあるテキストファイルを読みたい。ファイルの内容を1行ずつ読み取るために使用されるreadFile()があります。そして、setName()がコンテンツの一部を置き換えます。プログラムをコンパイルしてエラーなしで実行します。ただし、ファイルの内容はまったく変更されません。
ありがとうございました
public StringBuffer readFile(){ //read file line by line
URL url = getClass().getResource("test.txt");
File f = new File(url.getPath());
StringBuffer sb = new StringBuffer();
String textinLine;
try {
FileInputStream fs = new FileInputStream(f);
InputStreamReader in = new InputStreamReader(fs);
BufferedReader br = new BufferedReader(in);
while (true){
textinLine = br.readLine();
if (textinLine == null) break;
sb.append(textinLine);
}
fs.close();
in.close();
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return sb;
}
public void setName(String newName){
StringBuffer sb = readFile();
int pos = sb.indexOf("UserName=");
sb.replace(pos, pos+newName.length(), newName);
}