tinifile 的問題 |
答題得分者是:tick228
|
wangccw
一般會員 ![]() ![]() 發表:21 回覆:39 積分:17 註冊:2005-01-30 發送簡訊給我 |
Tinifile 無法處理utf8 ,所以改用 tmeminifile,而 tmeminifile 的資料是存在記憶體內,沒有ini 檔 64k的限制 。
但 Tinifile 有 tmeminifile 無法取代的地方,像是 多個應用程式(例如 A,B應用程式) 共用一組 ini 檔,若使用 tmeminifile ,會有 A 應用程式修改了 ini 後, B 應用程式無法立即反應的問題。(A,B程式各自獨立,有各自的 tmeminfile ,但指向同一個 ini 檔) 請問各位先進,有沒有第三方元件是和 Tinifile 一樣,但可以處理 utf8 的元件,謝謝!! |
tick228
高階會員 ![]() ![]() ![]() ![]() 發表:1 回覆:47 積分:104 註冊:2003-11-03 發送簡訊給我 |
自已做
[code delphi] procedure TMainForm.LoadINI(const INI: TCustomINIFile); var Section: String; begin // Reload INI File values if INI is TMemINIFile then TMemINIFile(INI).Rename(INI.FileName, True); // Read settings Section := 'MainForm'; IntValue := ReadInteger(Section, 'IntValue', 0); StrValue := ReadString(Section, 'StrValue', ''); end; procedure TMainForm.SaveINI(const INI: TCustomINIFile); var Section: String; begin // Write settings Section := 'MainForm'; WriteInteger(Section, 'IntValue', IntValue); WriteString(Section, 'StrValue', StrValue); // Update INI File values if INI is TMemINIFile then TMemINIFile(INI).UpdateFile; end; [/code] 若要達到即時共用, 就定時呼叫 LoadINI() 及 SaveINI() 比較好的方法是, 要取得參數值時, 才呼叫 LoadINI(); 有改變參數值時, 才呼叫 SaveINI(); 這樣才能避免頻繁的對 INI 檔案 Read/Write ===================引 用 wangccw 文 章=================== Tinifile 無法處理utf8 ,所以改用 tmeminifile,而 tmeminifile 的資料是存在記憶體內,沒有ini 檔 64k的限制 。 但 Tinifile 有 tmeminifile 無法取代的地方,像是 多個應用程式(例如 A,B應用程式) 共用一組 ini 檔,若使用 tmeminifile ,會有 A 應用程式修改了 ini 後, B 應用程式無法立即反應的問題。(A,B程式各自獨立,有各自的 tmeminfile ,但指向同一個 ini 檔) 請問各位先進,有沒有第三方元件是和 Tinifile 一樣,但可以處理 utf8 的元件,謝謝!! |
wangccw
一般會員 ![]() ![]() 發表:21 回覆:39 積分:17 註冊:2005-01-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |