如何把unicode文檔轉換為BIG5 |
缺席
|
songya
一般會員 發表:1 回覆:2 積分:0 註冊:2009-04-15 發送簡訊給我 |
|
ANDY8C
資深會員 發表:114 回覆:582 積分:299 註冊:2006-10-29 發送簡訊給我 |
|
songya
一般會員 發表:1 回覆:2 積分:0 註冊:2009-04-15 發送簡訊給我 |
|
aftcast
站務副站長 發表:81 回覆:1485 積分:1763 註冊:2002-11-21 發送簡訊給我 |
若你用的是 d2009 版的 cb 或 delphi,只要
astr: AnsiString; ustr: string; ustr := 你的 unicode string; astr := ustr; 這時候的 astr 就是 big5 了。 但少數某些 unicode才有的字會變成? 是正常的! 以上說的是在繁體中文的作業系統上。 ===================引 用 songya 文 章=================== ,. ,GBToBig5, ,unicode 成在繁體作業系統下所能識別的中文呢?
------
蕭沖 --All ideas are worthless unless implemented-- C++ Builder Delphi Taiwan G+ 社群 http://bit.ly/cbtaiwan |
sryang
尊榮會員 發表:39 回覆:762 積分:920 註冊:2002-06-27 發送簡訊給我 |
GBK 的檔案與 Unicode 的檔案都可以順利讀進來不會有亂碼
D2009 之後加入了 TEncoding 類別,可以在 TStrings.LoadFromFile 的第二個參數指定使用那一種編碼來解釋 例如: [code delphi] Memo1.Lines.LoadFromFile('C:TempGBK.txt', TEncoding.GetEncoding(936)); // 讀進 GBK 編碼的檔案 Memo2.Lines.LoadFromFile('C:TempUTF8.txt', TEncoding.UTF8); // 讀進 UTF-8 編碼的檔案 [/code]
------
歡迎參訪 "腦殘賤貓的備忘錄" http://maolaoda.blogspot.com/
編輯記錄
sryang 重新編輯於 2015-07-17 09:53:31, 註解 無‧
|
songya
一般會員 發表:1 回覆:2 積分:0 註冊:2009-04-15 發送簡訊給我 |
非常感謝aftcast&sryang 2位前輩的回復,因為系統的原因,我仍然用的是Delphi5開發,D5有什麼辦法把unicode的檔案轉換成big5.
以下代碼廠商寫的,在簡體系統中可正常顯示,在繁體系統中出現很多“??”字符, 如何轉換成正常的big5 , esName.Caption := trim(WideCharLenToString(PWideChar(@uniData), 15)); procedure TForm1.Button1Click(Sender: TObject); var info: array[0..255] of BYTE; uniData: array[1..256] of BYTE; ss, ss1: string; hFile: THandle; //檔案控制代碼 nRead: DWORD; //讀取位元組數 i, j: integer; rect: Trect; cmd: BYTE; begin ss1 := 'c: ttwz.txt'; if fileExists(ss1) then begin hfile := CreateFile(PChar(ss1),GENERIC_WRITE or GENERIC_READ,0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0); ReadFile(hfile, info, 256, nRead, nil); CloseHandle(hfile); //關閉文件 if nRead = 256 then begin //Showmessage('檔讀入成功!'); //======================================== j := 0; //Name for i := 1 to 30 do begin uniData[i] := info[j i - 1]; end; esName.Caption := trim(WideCharLenToString(PWideChar(@uniData), 15)); end; end; end; |
a07272
一般會員 發表:2 回覆:8 積分:2 註冊:2002-03-12 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |