我正在開發一個允許用戶查看多組(主要是本地存儲)文件的swing應用程序。我能夠存儲文件的列表(其它偏好之間)的文本屬性文件,但是當我嘗試拉文件值回來了,用從屬性文件讀取文件路徑問題
myProperties.getProperty("File")
它摒棄的「\」一些 s在文中。我證實,寫入屬性文件是這樣的:
myPrintWriter.println("File = " + myFile.toString().replaceAll("\\\\", "/"))
或本:
myPrintWriter.println("File = " + myFile.toString().replaceAll("\\\\", "\\\\\\\\"))
將使getProperty()
工作更喜歡我預期,但我並不想再轉換我的數據轉換爲特定於Java的格式,而沒有在API中進行解釋,所以我決定將它寫在Stack Overflow上。
但是當我在我的帖子中遇到這一點時就開始感到尷尬;我即將發佈Stack Overflow,甚至沒有諮詢關於java.util.Properties
(隨JDK發佈)的Java源代碼。我發現Javadoc對Properties.load()
的評論表明這是一個設計決定,例如,允許屬性值包含換行符。我想我會考慮用XML編寫我的屬性文件,如果我發現我需要這種語言獨立性。
後記:所以這是我對堆棧溢出的第一篇文章,我已經回答了我自己的問題,但我已經決定無論如何它張貼在希望一些人(或者,也許,一些人爲的自然語言 - 處理智能)可能會發現它有用(或照亮)。另外,我很好奇任何想法或建議人們可能會回覆。 TL; DR?謝謝閱讀!
謝謝,我認爲這更像我正在尋找的東西!只有〜15特定於屬性的方法,我真的應該通讀方法名稱/簽名... –