我多爾夫同意,但您也可以考慮替代使用隱藏的文件。首先是你現在依賴於(Windows)「attrib」命令。其次,僅僅因爲文件被標記爲隱藏並不意味着用戶無法看到或修改它(我的機器設置爲始終顯示隱藏的文件)。作爲替代方案,您可以考慮使用標準目錄位置和文件更新約定。例如,在Windows中,放置應用程序數據的標準位置位於「應用程序數據」文件夾中。您可以使用系統屬性「的user.home」這個文件夾:
System.out.println(System.getProperty("user.home"));
//prints out something like C:\Documents And Settings\smithj
您可以使用此創建自己的Application Data文件夾:
//For Windows
File appDataDir = new File(System.getProperty("user.home"), "Application Data\\MyWidgetData");
同樣在* nix的環境中應用程序通常保持他們的數據在主目錄中一個名爲.xyz目錄:
//*nix OSes
System.out.println(System.getProperty("user.home"));
//prints out something like /user/home/smithj
File appDataDir = new File(System.getProperty("user.home"), ".MyWidgetData");
你可以看一下屬性os.name,以確定正在運行什麼環境和建設的正確道路BA sed在那。
這不是隱藏文件的問題,實際問題是您無權更改文件屬性。您需要以管理員身份啓動cmd,然後執行命令。你可以使用下面的代碼:Process p = Runtime.getRuntime()。exec(「cmd/c start runas/user:domain \\ administrator /savecred:try.txt cmd」);' – 2013-08-27 18:01:14