Delphi获取汉字的unicode编码
[delphi] view plaincopy
Delphi7
var
n1: Word;
W: WideString;
begin
W := '万';
n1 := Word(WideChar(W[1]));
ShowMessageFmt('%s: %d', [W, n1]);
Delphi2010
[delphi] view plaincopy
var
n1,n2,n3,n4,n5: Word;
begin
n1 := Ord('万');
n2 := Cardinal('万');
n3 := Integer('万');
n4 := Word('万');
n5 := LoWord('万');
ShowMessageFmt('%s: %d,%d,%d,%d,%d', [#19975,n1,n2,n3,n4,n5]);
{万: 19975,19975,19975,19975,19975}
end;
如果想将图像进行文字识别,其实还是使用专业的第三方软件“ocr文字识别软件”;
1、打开文字识别软件,选择上面的极速识别功能;
2、点击左上角的添加文件按钮,将图像添加进去;
3、在上面选择文件的识别格式和识别效果;
4、点击 *** 作下面的开始识别按钮,开始进行图像文字识别,希望上面的方法可以帮助到您!
; ——此文章摘自《Delphi开发经验技巧宝典》定价 ¥特价 ¥ 购买>>//track linktech cn/m_id=dangdang&a_id=A &l= &l_type = width= height= border= nosave>
汉字的区位码
汉字是由两个字节组成的 本实例是利用byte()函数来获取汉字两个字节的字节数 并通过两个字节数与$a 的差 组合成汉字的区位码 运行结果如图 所示
//develop csai cn/delphi/images/ jpg >图 获得汉字的区位码
主要代码如下 procedure TForm Button Click(Sender: TObject); var str:String; hi lo:Integer; begin str:=Trim(Edit Text); hi:=byte(str[ ]) $a ; lo:=byte(str[ ]) $a ; Edit Text:=IntToStr(hi)+IntToStr(lo); end;区位码获取汉字
本实例是将区位码的前两位与后两位分别加上$a 再用Char()函数将前两位和后两位区位码转换成字符 这两个字符组合形成相对应的汉字 运行结果如图 所示
//develop csai cn/delphi/images/ jpg >图 通过区位码获取汉字
主要代码如下 procedure TForm Button Click(Sender: TObject); var S : String; lef ref : Integer; begin S := Trim(Edit Text); lef := StrToInt(copy(S ))+$a ; ref := StrToInt(copy(S ))+$a ; Edit Text := char(lef)+chr(ref); end;ASCII码获得字母
本实例是用chr()函数将指定范围内的ASCII码转换成字符 运行结果如图 所示
lishixinzhi/Article/program/Delphi/201311/8496
delphi的字符截取函数LeftStr, MidStr, RightStr这几个函数都包含在StrUtils中,所以需要uses StrUtils; 假设字符串是 Dstr := ’Delphi is the BEST’, 那么 LeftStr(Dstr, 5) := ’Delph’ MidStr(Dstr, 6, 7) := ’i is th’ RightStr(Dstr, 6) := ’e BEST’ 我不知道中文算几位,至于这个你自己去试了,总之是用MidStr()这个方法了
#加数字是Delphi中使用Unicode编码表示的字符。在Delphi中,使用Unicode编码可以表示所有的字符,包括汉字、符号、英文字母等。
例如,#21697#21517#35268#26684表示的是四个Unicode编码分别为21697、21517、35268、26684的字符。
如果想要在Delphi代码中转换为中文,可以使用如下代码:
s := #21697#21517#35268#26684;
s := WideChar(21697) + WideChar(21517) + WideChar(35268) + WideChar(26684);
这样,变量s就会包含四个Unicode编码分别为21697、21517、35268、26684的字符。如果这些字符对应的是中文,那么s就会包含四个中文字符。
此外,还可以使用如下代码将Unicode编码转换为中文字符串:
s := #21697#21517#35268#26684;
s := String(s);
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,StrUtils;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R dfm}
procedure TForm1Button1Click(Sender: TObject);
var
source,str: String;
len,i: Integer;
begin
source :='one中国a富强';
len := Length(source);
for i := 1 to len do
begin
if Ord(source[i]) > 128 then
str:=str+MidStr(source,i,1)+' '
else str:=str+MidStr(source,i,1);
end;
ShowMessage(str);
end;
end
以上在delphi7下通过。
以上就是关于Delphi 下如何取得汉字UNICODE扩展编码全部的内容,包括:Delphi 下如何取得汉字UNICODE扩展编码、如何使用delphi对一个图像进行文字识别、Delphi开发技巧:ASCII码与编码转换[1]等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)