文件並不亮起。
您必須更改您的代碼,以便在文件輸入流中包含對方法.close()的調用,並關閉輸出流,因爲方法存儲會調用.flush()但不關閉,所以你的文件系統不會顯示的變化:
String username = uName.getText().trim();
String pass = uPass.getText().trim();
// Read properties file.
Properties pro = new Properties();
try {
final FileInputStream fileInputStream = new FileInputStream("conf.properties");
pro.load(new FileInputStream("conf.properties"));
fileInputStream.close();
pro.setProperty("user", username);
pro.setProperty("pass", pass);
String user = pro.getProperty("user");
System.out.println(user);
final FileOutputStream fileOutputStream = new FileOutputStream("conf.properties");
pro.store(fileOutputStream, null);
fileOutputStream.close();
System.out.println("successful .......");
} catch (IOException ex) {
ex.printStackTrace();
}
你只需要編寫提取要存儲它們的格式屬性的代碼。這應該夠了吧。 (我編寫直接在這裏,對不起,如果有一個錯誤)
編輯: 我剛剛編碼它,它的工作原理:
public static void main(String[] args) {
String username = "bla";
String pass = "blabla";
// Read properties file.
Properties pro = new Properties();
try {
File file = new File("/tmp/conf.properties");
file.createNewFile();
final FileInputStream fileInputStream = new FileInputStream(file);
pro.load(fileInputStream);
fileInputStream.close();
pro.setProperty("user", username);
pro.setProperty("pass", pass);
String user = pro.getProperty("user");
System.out.println(user);
File toClose = new File("/tmp/conf.properties");
final FileOutputStream fileOutputStream = new FileOutputStream(toClose);
pro.store(fileOutputStream, null);
fileOutputStream.close();
System.out.println("successful .......");
} catch (IOException ex) {
ex.printStackTrace();
}
}
這是輸出:
cat /tmp/conf.properties
#Sun Nov 20 18:23:58 CET 2016
user=bla
pass=blabla
也許問題存在於其他地方?嘗試編譯,打包並在終端中運行它(java -jar ...)
我的猜測是,你正在尋找在編輯器中的文件是不是您使用的是保存/加載一個出來接受的答案。請記住,您的代碼使用相對於您程序的當前工作目錄的文件名... –
是否在IDE中運行程序?哪一個? –
@TimothyTruckle是在Netbeans中 –