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

有沒有什麼好方法可以快速的將現有程式轉成簡體中文

尚未結案
markov
中階會員


發表:55
回覆:135
積分:53
註冊:2003-12-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-05 22:32:06 IP:61.229.xxx.xxx 未訂閱
請教一下,我現在有一個已經寫好的程式,但是所有的介面都是使用繁體中文,現在我想全部改成簡體中文有什麼好方法可以快速的將現有程式轉成簡體中文嗎?
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-06 10:05:50 IP:203.95.xxx.xxx 未訂閱
若是有 source code 的話, 可以利用 ConvertZ 這套軟體來進行轉換 source code 再 compile 一份就行了. 若是沒有 source code 的話, 就得用其他的的軟體來進行修改 .exe binary 檔的方式.
markov
中階會員


發表:55
回覆:135
積分:53
註冊:2003-12-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-06 11:00:16 IP:211.21.xxx.xxx 未訂閱
謝謝timhuang兄 我己經去toget download ConvertZ也執行轉換了 但是好像轉不完全,只有部份有轉 (我只有針對.cpp,.h,.dfm,.ddp進行轉換) 是不是還要對bcb設定 此外,我想問一個笨問題, 在繁體中文的winxp當中如何加掛簡體字型才能正確顯示? 最後再問一個笨問題,GBK碼與HZ-GB2312碼那個比較popular?
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-06 11:16:23 IP:218.32.xxx.xxx 未訂閱
markov您好, 請參考: http://delphi.ktop.com.tw/topic.php?topic_id=4239 這個元件可以完全轉換。 我的繁簡體介面都是用這個元件轉的。 ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com
markov
中階會員


發表:55
回覆:135
積分:53
註冊:2003-12-01

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-06 11:48:21 IP:211.21.xxx.xxx 未訂閱
anpino兄 對不起,cvcode這個元件可以大概講一下如何使用嗎?
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-04-06 13:25:08 IP:218.32.xxx.xxx 未訂閱
引言: anpino兄 對不起,cvcode這個元件可以大概講一下如何使用嗎?
安裝以後,您應該可以看見cvcode.hpp這個檔案, 裡面有2個function可用: AnsiString GBtoBIG5(AnsiString value); AnsiString BIG5toGB(AnsiString value); (GB=簡體 BIG5=繁體) value 是要轉的字串, 回傳轉換後的字串。 注意BIG5toGB回傳的字串需要在簡體環境的OS才能正確顯示喔。 ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖
markov
中階會員


發表:55
回覆:135
積分:53
註冊:2003-12-01

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-04-06 14:42:28 IP:211.21.xxx.xxx 未訂閱
那這樣是不是程式裡每一個中文句子都要加上這個function 那如果原本寫在form裡面的不就得在程式裡加入轉碼的顯示function
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-04-07 17:28:07 IP:218.32.xxx.xxx 未訂閱
引言: 那這樣是不是程式裡每一個中文句子都要加上這個function 那如果原本寫在form裡面的不就得在程式裡加入轉碼的顯示function < face="Verdana, Arial, Helvetica"> 是的。每一個中文句子都要加上這個function。 但是說穿了,一個多國語系的軟體本來就不應該將訊息文字(包含元件的caption,text,hint...以及MessageBox等等)寫死在程式裡,而是應該要開一個外部檔案,用#define的方式紀錄出現的訊息,並使用單一的物件去偵測目前系統的語系並顯示訊息。 舉例來說: 假設有一個物件專門用來解釋訊息, 那麼這個物件可以這樣寫: < class="code"> class MsgCtrl { ... protected: String GetMsgString(const unsigned int& iLanID,const unsigned int& iMsgID); public: String GetTranString(const String& strMsg); ... }; String GetMsgString(const unsigned int& iLanID,const unsigned int& iMsgID) { /* 其中 iLanID表示語系編號 舉例: #define LAN_EN 1 #define LAN_CH 2 (用enum定義也可以) iMsgID是參照外部定義, 舉例: #define FILE_OPEN_ERR 01 文字部分可用ini [01] 1= File Open Error. 2= 開檔失敗。 (用xml紀錄也可以) */ // 若是用ini的話 // 使用TIniFile讀資料 return IniFile->ReadString(IntToStr(iMsgID),IntToStr(iLanID),""); } String MsgCtrl::GetTranString(const String& strMsg) { // 利用::GetSystemDefaultLangID(); 取得目前語系 // 如果是簡體就 return GBtoBIG5(GetMsgString(LAN_CH,strMsg)); } 函數叫用 GetTranString(FILE_OPEN_ERR); 以上只是大略舉個例子, 您可以想更好的方式。 我想論壇裡應該也會有關於多國語系軟體開發的討論。 請多多利用搜尋功能。 ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-04-13 11:25:59 IP:218.32.xxx.xxx 未訂閱
發現一個不錯的相關文章: http://delphi.ktop.com.tw/topic.php?topic_id=32464 建議看看。 ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com
系統時間:2024-05-12 16:42:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!