• 主页
  • 招聘
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API

怎么把"鞋子"两个字转化成"%D0%AC%D7%D3"样式?哪个函数呀?

chinavane 2005-02-22 02:37:42
delphi中怎么将"鞋子"两字转化成"%D0%AC%D7%D3"样式呢?在其它程序里一般情况是UrlEncode或是类似的内容,delphi有何类似函数?
...全文
114 点赞 收藏 8
写回复
8 条回复
ideacao 2005年02月22日
UP
回复 点赞
王集鹄 2005年02月22日
Format中两个%代表一个%
ShowMessage(Format('%%%.2x%%%.2x%%%.2x%%%.2x', [Ord('鞋子'[1]), Ord('鞋子'[2]), Ord('鞋子'[3]), Ord('鞋子'[4])]));

//参考如下代码
function UrlEncode(mUrl: string): string;
var
I: Integer;
begin
Result := '';
for I := 1 to Length(mUrl) do
begin
case mUrl[I] of
#33..#126: Result := Result + mUrl[I];
else Result := Result + '%' + IntToHex(Ord(mUrl[I]), 2);
end;
end;
end; { UrlEncode }

procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := UrlEncode('鞋子')
end;
回复 点赞
Frank.WU 2005年02月22日
“鞋子”結果為:BE%63%A4%6C% 和搜索引擎得出來的結果不一樣:%D0%AC%D7%D3
回复 点赞
cdsgajxlp 2005年02月22日
showmessage(
'%'+format('%s', [inttohex(ord('鞋子'[1]),1)])+
'%'+format('%s', [inttohex(ord('鞋子'[2]),1)])+
'%'+format('%s', [inttohex(ord('鞋子'[3]),1)])+
'%'+format('%s', [inttohex(ord('鞋子'[4]),1)]))
回复 点赞
laiqinghe 2005年02月22日
showmessage(format('%s', [inttohex(ord('鞋子'[1]),1)])+'%'+
format('%s', [inttohex(ord('鞋子'[2]),1)])+'%'+
format('%s', [inttohex(ord('鞋子'[3]),1)])+'%'+
format('%s', [inttohex(ord('鞋子'[4]),1)])+'%')

补充一下 其实和1 楼完全是一样的
回复 点赞
laiqinghe 2005年02月22日
up
回复 点赞
todouwang 2005年02月22日
up
回复 点赞
jinjazz 2005年02月22日
showmessage(format('%s,%s,%s,%s', [inttohex(ord('鞋子'[1]),1),
inttohex(ord('鞋子'[2]),1), inttohex(ord('鞋子'[3]),1),
inttohex(ord('鞋子'[4]),1)]))
回复 点赞
发动态
发帖子
Delphi
创建于2007-08-02

1478

社区成员

26.2w+

社区内容

Delphi 开发及应用
社区公告
暂无公告