Delphi XE 10.2.3使用CEF4Delphi取网页元素时碰到nbsp;变问号?的处理
用CEF4Delphi取网页元素时碰到ElementInnerText里含有" "
比如网页源码里是"内容 "取出来显示就变成"内容?"
搜索大部分是说把" "替换成其它字符即可
但实际操作怎么也替换不了,就算变量为AnsiString也不行
最后用了以下方法解决
参考网页:
https://blog.csdn.net/qq_29683707/article/details/80860904
关于 空格转成正常空格‘ ’的方法
1>先把字符串转码 let data = encodeURI(要转化的值)
2>接下来替换掉 空格 data = data .replace(/%C2%A0/g,'%20');
3>再转回来就ok了 data = decodeURI(data);
要用到encodeURI,找到Delphi版的
http://www.delphitop.com/html/zifuchuan/2599.html
方法1
user Httpapp;HttpEncode(AnsiToUtf8('中文'));
方法2
uses
IdURI;..
begin
S := TIdURI.URLEncode(str);
//
S := TIdURI.URLDecode(str);
end;
使用方法2的TIdURI.URLEncode,程序出错,原因不明
使用方法1成功
直接 TmpTitle:= HTTPEncode(TmpTitle); 即可
但编译器提示警告
[dcc32 Warning] uMiniBrowser.pas(469): W1000 Symbol 'HTTPEncode' is deprecated: 'Use TNetEncoding.URL.Encode'
[dcc32 Warning] uMiniBrowser.pas(471): W1000 Symbol 'HTTPDecode' is deprecated: 'Use TNetEncoding.URL.Decode'
[dcc32 Hint] uMiniBrowser.pas(469): H2443 Inline function 'HTTPEncode' has not been expanded because unit 'System.NetEncoding' is not specified in USES list
[dcc32 Hint] uMiniBrowser.pas(471): H2443 Inline function 'HTTPDecode' has not been expanded because unit 'System.NetEncoding' is not specified in USES list
意思是HTTPEncode和HTTPDecode已经弃用请用TNetEncoding.URL.Encode和TNetEncoding.URL.Decode
点进HTTPEncode看看
function HTTPDecode(const AStr: string): string; beginResult := TNetEncoding.URL.Decode(AStr); end;function HTTPEncode(const AStr: string): string; beginResult := TNetEncoding.URL.Encode(AStr); end;
其实就直接调用了
TNetEncoding.URL.Encode
所在单元是 System.NetEncoding
转载于:https://www.cnblogs.com/samvon/p/10086475.html
Delphi XE 10.2.3使用CEF4Delphi取网页元素时碰到nbsp;变问号?的处理相关推荐
- delphi cef写入html,Delphi XE 10.2.3使用CEF4Delphi取网页元素时碰到nbsp;变问号?的处理...
用CEF4Delphi取网页元素时碰到ElementInnerText里含有" " 比如网页源码里是"内容 "取出来显示就变成"内容?" 搜 ...
- delphi XE 10实现App和PC下TreeView调用ImageList和Sqlite数据
delphi XE 10实现App和PC下TreeView调用ImageList和Sqlite数据 一.工程 program TreeView; usesSystem.StartUpCopy,FMX. ...
- Delphi XE 10.4 FMX ListView 一个不易察觉的 BUG
Delphi XE 10.4 FMX ListView 一个不易察觉的 BUG 在使用 ListView DynamicAppearance 时发现非常强大,可以加很多东西,但没有发现复选框(哪位大佬 ...
- delphi xe 10.3 firemonkey stringdrig 插入,删除,添加
以下是在WIN7 64 ,delphi xe 10.3 以下成功运行: 运行界面: 代码 unit Unit1; interface uses System.SysUtils, System.Ty ...
- Delphi XE 10 跨平台三层数据库应用教程
Delphi XE 10 跨平台三层数据库应用教程 Delphi XE 开始越来越庞大,比经典的Delphi7难用,但依然是目前所有跨平台开发工具中开发效率最高.最容易上手的,其快速设计RAD理念是无 ...
- delphi xe 10.3 用FastReport打印预览当前记录
以下在WINDOWS10 + DELPHI XE 10.3 FireDAC +SQL SERVER 2008 下通过: 第一步,创建如下表单: 第二步 拖入以下几个控件: frxDBDat ...
- Delphi XE 10 跨平台三层数据库笔记
Delphi XE 开始越来越庞大,比经典的Delphi7难用,但依然是目前所有跨平台开发工具中开发效率最高.最容易上手的,其快速设计RAD理念是无与伦比的符合人性. 目前网上XE10类似教程很少,而 ...
- DELPHI XE 10.3开发安卓APP的经过
首先要感谢CSDN和各位上传东西上CSDN的朋友,我原来有900多分的,为上下载相关的东西,花掉了400多分. 本来想安装XE10.4的,无奈PJ不了,XE10.4前两天在一台WIN7 64位上成功安 ...
- 易语言获取html源码,易语言穿透所有框架取网页元素源码
yuanma 找视频-穿透10纵个框架 无模块,.版本 2 .子程序 网页关键字查找, 整数型 .参数 网页对象, 对象 .参数 关键字, 文本型 .局部变量 oDocument, 对象, , , 网 ...
最新文章
- Dialog 带白色的边的处理方法
- [Java] 02 String的常用方法
- DNS区域主从复制。。
- sqli-labs第一关(MySql基础)
- [云炬创业基础笔记] 第四章测试9
- ios不行安卓可以 微信签名_王者荣耀安卓、iOS互通来了!现在可以互看好友资料...
- oracle几个网络,ORACLE网络的几个重点概念
- 这篇带你熟悉 SpringBoot+RabbitMQ 方式收发消息
- 全网首发:LINUX编译JNA:编译产生jna.jar
- installshield2020打包教程
- 架构之美:教你如何分析一个接口?
- mysql有rollup函数吗_MySQL-with rollup函数运用
- unity识别图片颜色并把颜色数量排序
- sql语句中左连接查询的使用
- 2022低压电工考试题及答案
- 查SCI索引号和EI索引号的方法
- 2020考研数学一考研大纲原文
- 基于asp.net738房屋租赁管理系统
- 亚马逊云主机linux密钥登陆改为密码登陆
- Java程序员-日常工作技能清单