Delphi中实现全角转半角
来源:互联网 发布:男士形象设计软件下载 编辑:程序博客网 时间:2024/05/09 11:41
原文:http://www.cnitblog.com/gffnxk/archive/2006/04/29/9910.aspx
function SbctoDbc(s:string):string;
var
nlength,i:integer;
str,ctmp,c1,c2:string;
{
在windows中,中文和全角字符都占两个字节,
并且使用了ascii chart 2 (codes 128 - 255 )。
全角字符的第一个字节总是被置为163,
而第二个字节则是相同半角字符码加上128(不包括空格)。
如半角a为65,则全角a则是163(第一个字节)、 193 (第二个字节, 128 + 65 )。
而对于中文来讲,它的第一个字节被置为大于163,(
如 ' 阿 ' 为: 176 162 ),我们可以在检测到中文时不进行转换。
}
begin
nlength:=length(s);
if (nlength=0) then
exit;
str:='' ;
SetLength(ctmp, nlength+1 );
ctmp:=s;
i:=1;
while (i<=nlength) do
begin
c1:=ctmp[i];
c2:=ctmp[i+1];
if (c1=#163) then //如果是全角字符
begin
str:=str+chr(ord(c2[1])-128);
inc(i, 2);
continue ;
end;
if (c1>#163) then //如果是汉字
begin
str:=str+c1;
str:=str+c2;
inc(i, 2);
continue ;
end;
if (c1=#161) and (c2=#161) then //如果是全角空格
begin
str:=str+' ';
inc(i, 2);
continue;
end;
str:=str+c1;
inc(i);
end;
Result:=str;
end;
- Delphi中实现全角转半角
- Delphi中实现全角转半角
- Delphi全角转半角
- delphi 全角转半角函数
- java 全角转半角实现
- javascript中全角转半角
- javascript中全角转半角
- javascript中全角转半角
- java中实现全角半角转换
- Delphi中全角字符转换为半角字符
- 全角转换成半角(delphi)
- [HTML][Javascript]javascript中全角转半角
- 全角转半角 半角转全角
- 全角转半角与半角转全角
- 半角转全角、全角转半角
- java 实现字符串全角转半角、半角到全角的转换
- 转全角半角
- 半角转全角
- C++虚函数表解析(转)
- 用Apache htpasswd管理SVN帐户
- Understanding Video and Graphics Adapters
- 关于oracle分页中的rownum
- java 发送邮件的简单例子
- Delphi中实现全角转半角
- 标准的DIV CSS布局对SEO的影响
- Head First C#中文版 图文皆译 (page15)
- 调研结论:DIV+CSS为什么好?
- 未来软件是什么样子?-数据库篇(2)
- 大型网站架构演变和知识体系
- 蠕虫病毒——“木木”(Worm_MuMu.A)
- 利用Delphi读写Excel信息
- .NET 认证