惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
D
Darknet – Hacking Tools, Hacker News & Cyber Security
博客园 - 【当耐特】
博客园_首页
博客园 - Franky
有赞技术团队
有赞技术团队
T
The Blog of Author Tim Ferriss
Recorded Future
Recorded Future
H
Hackread – Cybersecurity News, Data Breaches, AI and More
F
Fortinet All Blogs
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
T
Tailwind CSS Blog
博客园 - 三生石上(FineUI控件)
M
MIT News - Artificial intelligence
D
Docker
H
Help Net Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
GbyAI
GbyAI
S
SegmentFault 最新的问题
腾讯CDC
Latest news
Latest news
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
I
InfoQ
美团技术团队
C
Cybersecurity and Infrastructure Security Agency CISA
宝玉的分享
宝玉的分享
Hugging Face - Blog
Hugging Face - Blog
V
Visual Studio Blog
C
Cisco Blogs
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
S
Schneier on Security
Spread Privacy
Spread Privacy
Recent Announcements
Recent Announcements
T
Threat Research - Cisco Blogs
F
Full Disclosure
T
Threatpost
T
Tenable Blog
AWS News Blog
AWS News Blog
Cloudbric
Cloudbric
The Last Watchdog
The Last Watchdog
B
Blog RSS Feed
W
WeLiveSecurity
I
Intezer
月光博客
月光博客
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
L
Lohrmann on Cybersecurity
Hacker News - Newest:
Hacker News - Newest: "LLM"

博客园 - 后凤凰

nodejs在linux系统调用lazarus编辑的so文件 node使用koffi load dll卡死 Tencoding with out BOM lazarus配置记录 lazarus fastreport导出pdf Cant swap font ubuntu20.10安装scrcpy 背诵小鹤双拼 FireBird DataType TFDManager不能在Dll中创建线程池 cxGrid导出到图片 delphi安装package时无法定位程序输入点bpl electron14之后版本使用remote - 后凤凰 - 博客园 electron-edge-js编译 - 后凤凰 - 博客园 delphi 10.4.2 启动时报错 socket error go特点 elecron调用C#dll Delphi Records与classes几点不同 electron 14 remote使用 - 后凤凰 anbox
Delphi fastreport乱码处理
后凤凰 · 2021-12-07 · via 博客园 - 后凤凰

2007

(91, 230, 160, 183, 230, 156, 172, 231, 187, 147, 230, 158, 156, 46, 38, 35, 51, 52, 59, 233, 161, 185, 231, 155, 174, 38, 35, 51, 52, 59, 93, 32, 91, 230, 160, 183, 230, 156, 172, 231, 187, 147, 230, 158, 156, 46, 38, 35, 51, 52, 59, 231, 174, 128, 231, 167, 176, 38, 35, 51, 52, 59, 93)

xe10 丢失了信息 176, 38

(91, 230, 160, 183, 230, 156, 172, 231, 187, 147, 230, 158, 156, 46, 38, 35, 51, 52, 59, 233, 161, 185, 231, 155, 174, 38, 35, 51, 52, 59, 93, 32, 91, 230, 160, 183, 230, 156, 172, 231, 187, 147, 230, 158, 156, 46, 38, 35, 51, 52, 59, 231, 174, 128, 231, 167, 63, 35, 51, 52, 59, 93)

fastreport6读取fastreport4的fr3文件时,最后一个中文字乱码。
分析发现
fr3文件中的xmlnode中Text是utf8编码的,但是在frxxml.pas当中ReadItem函数当中Text:=String(.....)
直接将字符串xml所有字符强转为string
如果其中包含Text:="uft8编码的内容"
utf8string强转时丢失了信息,导致frxXMLSerializer单元XMLTOObj函数从xmlNode.Text中读取信息时,UTF8Decode解码出错
有两个处理方案
1.给xmlnode添加一个AnsiText:AnsiString的属性,在ReadItme时将转换前的信息保存在这个属性当中;之后参考XMLToObj添加XMLToObjA。其中操作全部使用AnsiString操作。
2.另外一个方案就是直接在ReadItem函数中String转换前,将Text中的Utf8编码的内容解码为ansistring。XmlToobj函数从Text读取的解码函数都去掉。
方法一应该简单点
方案二node当中可能有多个Text=""的值,要处理的事多点

修改source目录下源码后,重新编译fastreport就可以