您的位置:首页 > 其它

Free Spider解决中文页面显示问题

2010-05-17 16:05 369 查看
在上篇文章我写了,在Apache的http.conf文件配置UTF-8的格式暂时解决一下中文乱码。但这个问题不是个长久的方案,因为数据库如果不是UTF-8格式则一样显示乱码,这几天通过了解相关文档,总算解决这个问题。
1.针对数据库是GB2312的格式。
我们使用Free Spider的SpiderTable来显示数据库列表。由于数据库是GB2312格式,这部分只要配置Http.conf为如下格式,就是可以解决。
AddDefaultCharset GB2312
2.网页的格式
由于Apache使用了GB2312来显示,所以我们必须对中文做一下处理,通过参考一些人的程序,我使用Lazarus写了一个函数,这个函数是用来获取中文的GB2312编码的。函数如下:
Lazarus Code:
function ChinesetoGB2312(str: String): string;
var
I: integer;
S: WideString;
HexS:String;
begin
S := utf8toansi(str);
Hexs:='';
for I := 1 to Length(S) do
begin
HexS := HexS+'&#x'+ IntToHex(Ord(S[I]), 2)+';';
end;
Result:=Hexs;
end;
Delphi Code(Delphi请自行修改为函数,在此不列出):
procedure TForm1.Button6Click(Sender: TObject);
var
I: Integer;
S: widestring;
HexS: widestring;
begin
S := '我';
ShowMessage(IntToStr(Length(S)));
for I := 1 to Length(S) do
begin
HexS := HexS + IntToHex(Ord(S[I]), 2);
end;
showmessage(HexS);
end;
使用这两个方法,就可以使用Lazarus的Free Spider控件来开发我们的网络程序了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: