delphi 中 unicode 轉漢字 函式

2022-08-28 22:51:36 字數 1026 閱讀 1492

近期用到這個函式,無奈沒有找到 delphi 自帶的,網上找了下 有類似的,沒有現成的,我需要的是 支援 「\u4f00 」 這種格式的,即前面帶標準的 「\u」  於是改造了一下。

下面是 解碼 函式:

方便有需要的人吧,我自己也需要^_^

//

/ //

/ // unicode轉漢字 ,支援自動過濾非 unicode編碼,即非 unicode編碼不轉換

/// 只支援 標準的 型別 \u4e00 這種格式的 轉換, 以\u 開頭的

/// code by 猿哥哥 2015-2-11

///

function tmyencode.unicodetochinese(inputstr:string):string

;var

i:integer;

index:integer;

temp,top,last:

string

;begin

index:=1

;

while index>=0

dobegin

index:= inputstr.indexof('\u'

); if index<0

then

begin

last:=inputstr;

result:= result+last;

exit;

end;

top:= copy(inputstr,1,index); //

取出 編碼字元前的 非 unic 編碼的字元,如數字

temp:= copy(inputstr,index+1,6);//

取出編碼,包括 \u ,如\u4e3f

delete(temp,1,2

); delete(inputstr,

1,index+6

); result:= result+ top+ widechar( strtoint('

$'+temp)) ;

end;end;

Delphi7中儲存unicode的BUG?

delphi7 中儲存unicode 的bug 近日,在用 delphi7 做unicode 的程式時發現了這樣乙個問題,就是使用 tado mand 元件執行 sql語句時,如果 sql語句中有 unicode 字元,儲存在資料庫裡會出現亂碼,使用 ttntadoquery 也是一樣 使用引數方式...

delphi讀音 delphi漢字轉拼音

loading.function getpyindexchar hzchar string char begin 的到乙個漢字的拼音頭個字母 case word hzchar 1 shl 8 word hzchar 2 of b0a1.b0c4 result a b0c5.b2c0 result b...

UniCode下CString轉char 的方法

1unicode下cstring轉換為char 2unicode下char 轉換為cstring 今天進行檔案操作時,將cstring的getbuffer 後直接倒到char陣列後寫入檔案發現 每個字元與字元之間都有乙個空格存在,而且有內容丟失。原來cstring類物件getbuffer 後以後還是...