我想創建自己的,但有很多細節要考慮使它與Java.properties文件100%兼容,所以我首先要問。是否有一個讀取和寫入.properties文件的Delphi庫?
2
A
回答
0
不是Java的人,而是從我能看到的.properties文件與僞裝的.INI文件類似;它具有名稱=值對,沒有部分名稱。你可以使用Delphi的TStringList來處理它;它具有名稱和值屬性。
例如,從屬性文件讀取的行:
MyProgramData=c:\documents and settings\DR\Application Data\MyApp
我可以簡單地使用:
var
SL: TStringList;
MyDataPath: string;
begin
SL := TStringList.Create;
try
SL.LoadFromFile('myapp.properties');
MyDataPath := SL.Values['MyProgramData'];
finally
SL.Free;
end;
// Do something with MyDataPath
end;
對於過於迂腐的讀者,我並不是暗示的TStringList將允許您使用.properties文件的完整功能;它可能,但是,足夠你需要做的。 (正如我所說的,我不是一個Java人。)
4
曾經有一個名爲Gel的Java IDE。它是用Delphi寫的,它是一個好的IDE,所以我期望它能夠處理屬性文件。作者已經停止了該項目的工作。在他的blog post describing the project's cancellation中,他提到開放項目開源的前景,但它從未真正起飛。如果你問得很好,你可能會得到你正在尋找的那部分代碼。
如果您發現使用TStrings
作爲接口的任何解決方案,請持懷疑態度。儘管該類具有Names
和Values
屬性,使其成爲處理鍵/值對的類時很有吸引力,但它不會與Java的屬性文件完全兼容。原因是Java允許「=」作爲密鑰名稱中的字符,並且TStrings
類通過查找字符串中的第一個「=」字符來檢測名稱的結尾和值的開始。此外,Java屬性文件可以使用「:」作爲分隔符,甚至可以使用普通的空格。
相關問題
- 1. 讀取和寫入文件
- 2. 寫入和讀取文件
- 3. Python:讀取和寫入多個文件
- 4. 從文件讀取和寫入文件是不一樣
- 5. Installshield讀取.properties文件
- 6. 尋找一個Delphi庫/組件來讀取.net app.config文件
- 7. 是否可以在單個文件中寫入和讀取多個DataFrame?
- 8. 讀取和寫入文本文件
- 9. 優化文件的讀取和寫入
- 10. 重寫庫項目的Android .properties文件
- 11. 是否有Delphi的MapReduce庫?
- 12. 使用VB.NET讀取和寫入到一個txt文件,用
- 13. 讀取和寫入到同一個文件
- 14. 在java中讀取和寫入同一個文件
- 15. 使用結構讀取文件,計算和寫入另一個
- 16. Azure函數 - 寫入和讀取一個Blob文件
- 17. 在Haskell中讀取和寫入文件
- 18. Python快速讀取和寫入文件
- 19. 從csv文件讀取和寫入
- 20. 麻煩讀取和寫入文件c#
- 21. 讀取和寫入XML文件
- 22. 如何讀取和寫入文件
- 23. 如何讀取和寫入文件
- 24. 同時寫入和讀取文件
- 25. 文件讀取,寫入和保存
- 26. 從plist文件中寫入和讀取
- 27. 使用mex讀取和寫入文件
- 28. 從文件讀取和寫入
- 29. PHP:讀取和寫入Excel文件
- 30. Python:讀取和寫入CSV文件
這不是一個有效的.properties文件。反斜槓是特殊的。閱讀java.util.Properties.load()函數的文檔。等號可以是關鍵名稱的一部分,但INI不支持這一點。行可以用反斜槓繼續。 – 2009-02-07 17:41:01
嗯,羅布?我沒有說這是一個有效的.properties文件,我知道嗎? – 2009-02-07 17:44:02