TStringList.CommaText 可將字串清單序列化為逗號分隔單行字串,適合寫入 INI 檔案單一鍵值。
const String iniFile = "blah.ini", iniSection = "My Section", iniValue = "Memo1";
void __fastcall TForm1::btnSaveClick(TObject *Sender) {
TIniFile *ini = new TIniFile(ExtractFilePath(Application->ExeName) + iniFile);
ini->WriteString(iniSection, iniValue, Memo1->Lines->CommaText);
delete ini;
}
void __fastcall TForm1::btnLoadClick(TObject *Sender) {
TIniFile *ini = new TIniFile(ExtractFilePath(Application->ExeName) + iniFile);
Memo1->Lines->CommaText = ini->ReadString(iniSection, iniValue, "");
delete ini;
}
// 進階:載入後排序,不影響儲存內容
void __fastcall TForm1::btnSortLoadClick(TObject *Sender) {
TStringList *sl = new TStringList;
TIniFile *ini = new TIniFile(ExtractFilePath(Application->ExeName) + iniFile);
sl->CommaText = ini->ReadString(iniSection, iniValue, "");
sl->Sort();
Memo1->Lines = sl;
delete ini;
delete sl;
}
Memo1->Lines 不會改變原 INI 內容。需引入 <inifiles.hpp>。