zoukankan      html  css  js  c++  java
  • delphi函数,识别字符集编码

    纪念不用 Delphi 开发7周年

     函数,获取web page文本,识别字符集编码;

     1 function CreateHttpRequest(proxyServer: string = ''; proxyPort: integer = 0):
     2   TIdHTTP;
     3 function DecodeHttpRequestText(InString: string): string;
     4 implementation
     5 
     6 {$R *.dfm}
     7 
     8 function DecodeHttpRequestText(InString: string): string;
     9 begin
    10   Result := UpperCase(InString);
    11   //google,baidu,cnblogs,localhost等测试ok...
    12   if (Pos('CHARSET=', Result) = 0or (pos('=UTF-', Result) <> 0then
    13     InString := Utf8Decode(InString);
    14   Result := InString;
    15 end;
    16 
    17 function CreateHttpRequest(proxyServer: string = ''; proxyPort: integer = 0):
    18   TIdHTTP;
    19 begin
    20   Result := TIdHTTP.Create(nil);
    21   with Result do
    22   begin
    23     HandleRedirects := true;
    24     HTTPOptions := [hoForceEncodeParams];
    25     ReadTimeout := 30000;
    26     Request.Accept :=
    27       'image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*';
    28     Request.AcceptLanguage := 'zh-cn';
    29     Request.ContentType := 'application/x-www-form-urlencoded';
    30     Request.UserAgent :=
    31       'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 4.0)';
    32     if (proxyServer <> ''then
    33       proxyParams.ProxyServer := proxyServer; //'代理服务器地址';
    34     if proxyPort <> 0 then
    35       proxyParams.ProxyPort := proxyPort; //'代理服务器端口';
    36   end;
    37 end;
    38 
    39 procedure TForm1.btn1Click(Sender: TObject);
    40 var
    41   getstr: string;
    42 begin
    43   mmo1.Lines.Clear;
    44   getstr :=DecodeHttpRequestText( CreateHttpRequest().Get(edt1.Text));
    45   mmo1.Lines.Add(getstr);
    46 
    47 end;
    版权信息
    作者:Chinasf
    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    php+redis 学习 一 连接
    【转】什么是tcp
    什么是 lnmp 实现原理。
    gitlab wiki 500
    memcached 与 redis 的区别和具体应用场景
    选择 稳定的工作 还是 挑战的工作
    php 数组变成树状型结构
    虚拟机服务器更新时间
    Phalcon调试大杀器之phalcon-debugbar安装
    MySQL 中的数据类型介绍
  • 原文地址:https://www.cnblogs.com/Chinasf/p/2319811.html
Copyright © 2011-2022 走看看