怎样把英文字符与中文转换成UNICODE格式?(100分)

  • 主题发起人 主题发起人 zzjat
  • 开始时间 开始时间
Z

zzjat

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi有这样的函数吗?
 
不是有widestring吗
 
StringToWideChar &nbsp; <br>其实在delphi自动转换的 <br>比如你定义一个string和Widestring,直接赋就可以了
 
不是这个,是unicode格式的编码
 
http://www.delphibbs.com/keylife/iblog_show.asp?xid=14470
 
前面回答的也是&quot;unicode格式的编码&quot;。
 
默认情况是使用AnsiString的<br>你再定义一个WideString类弄的变量<br>然后WStr:=WideSTring(astr);就搞定了
 
都在亂說一氣,英文字符与中文转换成UNICODE格式是需要轉換對照表的,不是想轉換就轉換的,比如 。 符號應轉換為英文的 . 符號還是別的什么符號,這需要你自己設計算法來實現的。<br>GB3212 和 &nbsp;Unicode 或 UTF8 都有各自的碼表,你要完全清楚,並比較它們的異同,才能設計出好的轉換軟件。
 
151:其实我不需要转中文的,只是需要把指定的URL转成UNICODE编码,是不是就没这么复杂?您说的这些转换表哪里有?能不能给我指点一下,谢谢!
 
WideString(str)
 
MultiByteToWideChar和WideCharToMultiByte<br>这两个函数自己查一下MSDN
 
to l51<br>同意
 
// &nbsp;string to PwideChar<br>function TEditGridColumn.StrToPWideChar(str: String): PWideChar;<br>var<br> &nbsp;pwc: PWideChar;<br>begin<br> &nbsp;GetMem(pwc, Length(str) * Sizeof(PwideChar) + 1);<br> &nbsp;result := StringToWideChar(str, pwc, Length(str) * SizeOf(WideChar) + 1);<br>end;<br><br><br>//是unicode码。在delphi中可以用如下函数转换。<br>//UniCode -&gt; 汉字<br>function UniCode2Chinese(AiUniCode : Integer) : String;<br>var<br> &nbsp;ch, cl : string[3];<br> &nbsp;s : string;<br>begin<br> &nbsp; s := IntToHex(AiUniCode, 2);<br> &nbsp; cl := '$' + Copy(s, 1, 2);<br> &nbsp; ch := '$' + Copy(s, 3, 2);<br> &nbsp; s := Chr(StrToInt(ch)) + Chr(StrToInt(cl)) + #0;<br> &nbsp; Result := WideCharToString(pWideChar(s));<br>end;<br><br>//汉字 -&gt; UniCode<br>function Chinese2UniCode(AiChinese : String) : Integer;<br>var<br> &nbsp;ch, cl : string[2];<br> &nbsp;a : array [1..2] of char;<br>begin<br> &nbsp;StringToWideChar(Copy(AiChinese, 1, 2), @(a[1]), 2);<br> &nbsp;ch := IntToHex(Integer(a[2]), 2);<br> &nbsp;cl := IntToHex(Integer(a[1]), 2);<br> &nbsp;Result := StrToInt('$' + ch + cl);<br>end;
 
看看這個鏈接吧,不要告訴我你不喜歡看陰文,呵呵,我也不喜歡,但是你如果不看的話,就放棄編程吧,因為不看英文的人不適合編程行業。<br>http://www.unicode.org/onlinedat/resources.html#5
 
多人接受答案了。
 
后退
顶部