全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1798
推到 Plurk!
推到 Facebook!

PWideChar如何使用?

答題得分者是:chiehjj
talkshow
一般會員


發表:1
回覆:4
積分:6
註冊:2008-10-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-28 01:23:00 IP:219.140.xxx.xxx 訂閱
AStr: string
WStr: PWideChar;
begin
Size := Length(AStr) * 4;
WStr := AllocMem(Size);

// convert to Unicode
StringToWideChar(AStr, WStr, Size);
以上代碼輸入為string,輸出為PWideChar。
請問怎麼修改為:輸入為$4E25,輸出為PWideChar?
------
我思故我在
chiehjj
初階會員


發表:21
回覆:63
積分:26
註冊:2002-12-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-29 10:19:07 IP:61.58.xxx.xxx 未訂閱
試看看
var
S : Widestring;ps:pwidechar;
begin
S := WideChar($4E25);
ps:= pwchar(s);
TextOutW(Canvas.Handle, 0, 150, ps,Length(s));
end;
talkshow
一般會員


發表:1
回覆:4
積分:6
註冊:2008-10-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-29 21:54:36 IP:219.140.xxx.xxx 訂閱
請問size是怎樣計算的?
能夠達到和StringToWideChar同樣的效果嗎
------
我思故我在
chiehjj
初階會員


發表:21
回覆:63
積分:26
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-10-30 20:36:56 IP:221.169.xxx.xxx 未訂閱
您是指size的計算方式?stingtowidechar的size 的大小需要string字節數總長度加1, 英文字占一個字節中文字佔2個字節, 
size得長度可以大不可以小, 小了會變成亂碼,把 $4E25加到string上,輸出為PWideChar,因為$4E25應該是简體中文,
與目前英文及繁體中文的組合不好整合可能需要widestring或unicode較為妥當delphi2009應該有好的解決方式(我沒試過),
大陸的萬一博客有很詳細的解說您可以上網參考看看.
系統時間:2024-05-07 14:05:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!