參考資料 ----
本篇筆記的做法所儲存的文字檔,預設不含 BOM,若要為含 BOM 的文字檔,則需在一開始要寫入文字檔時,加入 BOM 記號。
const sFilename = 'd:\要存放文字檔的目錄\uf8write.txt'; var myfile: TextFile; ss: string; xx: integer; begin Screen.Cursor := crHourGlass; // 若文字檔不存在, 則新建文字檔 if not FileExists(sFilename) then begin AssignFile(myfile, sFilename); ReWrite(myfile); CloseFile(myfile); end; AssignFile(myfile, sFilename); ReWrite(myfile); xx := 0; // 將 memo1 的內容逐列寫入文字檔 while (xx<memo1.Lines.Count) do begin // 檔首寫 BOM if (xx=0) then begin ss := #$EF#$BB#$BF + AnsiToUTF8(memo1.Lines[xx]); end else begin ss := AnsiToUTF8(memo1.Lines[xx]); end; WriteLn(myfile, ss); xx := xx + 1; end; Flush(myfile); CloseFile(myfile); Screen.Cursor := crDefault; Showmessage('ok'); end;
相關筆記 ----
沒有留言:
張貼留言