中文字碼的問題 |
尚未結案
|
wentsung
一般會員 發表:9 回覆:3 積分:2 註冊:2003-10-12 發送簡訊給我 |
|
yangshengfa
一般會員 發表:1 回覆:16 積分:3 註冊:2003-09-06 發送簡訊給我 |
|
wentsung
一般會員 發表:9 回覆:3 積分:2 註冊:2003-10-12 發送簡訊給我 |
|
m8815010
版主 發表:99 回覆:372 積分:289 註冊:2003-11-13 發送簡訊給我 |
引言: 回覆yangshengfa前輩: 您好,我的意思是要怎樣在螢幕上看到中文字的unicode長什麼樣子? 謝謝您的回覆 >>< face="Verdana, Arial, Helvetica"> wnetsung你好< >: 剛好最近也在研究這方面的東東,但是這些問題似乎並不新穎,早有研究了< >! http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46495 axsoft版主寫的,和你的需求一樣,參考看看吧! 用 |
wentsung
一般會員 發表:9 回覆:3 積分:2 註冊:2003-10-12 發送簡訊給我 |
回覆m8815010 版主 :
謝謝您的指引讓我有所獲得,對於黃權燊先生的程式仍有部份程式碼
不甚了解,請版主再一次不吝指教,謝謝:
1.MultiByteToWideChar(CP_ACP,0,text1,-1,szWchar,254);
2.WideCharToMultiByte(CP_ACP,0,w_text2,-1,text1,254,0,0); MultiByteToWideChar();
WideCharToMultiByte();
這兩個函是不是C++的內建函式(因為使用"Help"找不到)
又函式內的參數各代表什麼意思
最後"CP_ACP"是代表什麼意思? 黃權燊先生撰寫之程式碼:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
wchar_t szWchar[255], w_text2[255];
char text1[255], text2[255], text3[5], text4[5];
int a,b,c,d,e;
int wa,wb,wc; StrPCopy(text1,Edit1->Text);
b=strlen(text1);
// 如果 Edit1 有內容
if(b>0){
// 計算中英文及數字的個數
c=0; d=0;
for(a=0;aText=text2;
}}
// 如果 Edit1 沒有內容, 就讀入 Edit2
else{
StrPCopy(text1,Edit2->Text);
b=strlen(text1);
// 把16進制數碼轉換成十進制數碼, 及計算字數
wc=0; e=0;
for(a=0;a47&&c<58) wb=c-48;
else wb=16;
if(wb<16){
text4[wc ]=wb;
if(wc==4){
// 轉換成數值, 高位元在後, 低位元在前
wa=text4[0]*16 text4[1] text4[2]*16*16*16 text4[3]*16*16;
// widechar 有如整數
w_text2[e ]=wa;
wc=0;
}}
}
// 轉換成 ASCII 字串
WideCharToMultiByte(CP_ACP,0,w_text2,-1,text1,254,0,0);
b=strlen(text1);
c=0; d=0;
// 讀取中英文及數字的個數
for(a=0;aText=text1;
}
|
yangshengfa
一般會員 發表:1 回覆:16 積分:3 註冊:2003-09-06 發送簡訊給我 |
如果你是要知道ASCII 轉換成 Unicode編碼的方法,m8815010 版主已提供參考範例,如果只是要知道 Unicode的編碼,參考這個範例:
void __fastcall TForm1::Button1Click(TObject *Sender) { WideString ws; ws = Edit1->Text; Memo1->Lines->Clear(); for (int i=0; i發表人 - yangshengfa 於 2004/03/27 19:19:50 |
m8815010
版主 發表:99 回覆:372 積分:289 註冊:2003-11-13 發送簡訊給我 |
引言: 回覆m8815010 版主 : 謝謝您的指引讓我有所獲得,對於黃權燊先生的程式仍有部份程式碼 不甚了解,請版主再一次不吝指教,謝謝: 1.MultiByteToWideChar(CP_ACP,0,text1,-1,szWchar,254); 2.WideCharToMultiByte(CP_ACP,0,w_text2,-1,text1,254,0,0);wentsung你好< >: 有看到你的回應,但實在是沒時間回覆< >! 你說的那兩個function是Win API的function,要查的話我還是建議直接Builder中Help-->Window SDK 裏面去查比較快,當然msdn也行啦!那你自已先看說明吧,有問題再說! 另外Builder也有將這兩隻改寫成自已的function,叫: StringToWideChar WideCharToString 這兩隻就可以在Builder的help中找到了! yangshengfa說的應該合用了! 嗯,如果你要中文字轉成 href="http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46228">http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46228 That's all! 發表人 - |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
wentsung 您好:
PO程式碼的方式請參考版規說明
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46593 煩請修改, 謝謝您的配合
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |