首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vXML.Active :=真=> EDOMParseError“%25”字符序列

vXML.Active :=真=> EDOMParseError“%25”字符序列
EN

Stack Overflow用户
提问于 2014-01-20 12:16:22
回答 1查看 349关注 0票数 1

我在Delphi中遇到了这个问题,当我想要加载一个XML文件时,它的文件名中包含了"%25“。

代码语言:javascript
复制
   vXML := TXMLDocument.Create(nil);
  vXML.FileName := pFileName;
  try
    try
      vXML.Active := True;

在调试模式中,一行出现了一个错误

代码语言:javascript
复制
vXML.Active := True; 

错误:

第一次机会例外为$75ACC41F。带消息的异常类EDOMParseError 线:0‘。

Enyone知道如何让TXMLDocument在文件名中使用"%25“字符打开一个文件?

文件不是空的-我查过了。当我删除"%25“字符时,一切正常。示例文件名:"something %25.xml“

我的系统和IDE: Windows 7家庭高级与服务包1;Delphi 2010;

EN

回答 1

Stack Overflow用户

发布于 2014-01-20 14:18:57

要正确加载文件的文件名(例如) "%25“,我们必须在文件路径上使用PathEncode。例如:

代码语言:javascript
复制
uses idURI;

[...]

vXML.LoadFromFile(TIdURI.PathEncode(pFileName));

警告:如果你使用的字符是'ó‘,这是行不通的.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21233868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档