1

ファイル名に「%25」を含む XML ファイルをロードしようとすると、Delphi でこの問題が発生します。

   vXML := TXMLDocument.Create(nil);
  vXML.FileName := pFileName;
  try
    try
      vXML.Active := True;

デバッグモードでは、行にエラーがあります

vXML.Active := True; 

エラー:

$75ACC41F の最初のチャンス例外。メッセージ付きの例外クラス EDOMParseError

行: 0 '。

ファイル名に「%25」文字を含むファイルを TXMLDocument で開く方法を知っている人はいますか?

ファイルが空ではありません - チェックしました。「%25」文字を削除すると、すべて正常に動作します。サンプルファイル名:「something %25.xml」

私のシステムと IDE: Service Pack 1 を適用した Windows 7 Home Premium。デルファイ 2010;

4

1 に答える 1

0

ファイル名に (たとえば) "%25" を含むファイルを正しくロードするには、ファイル パスで PathEncode を使用する必要があります。例えば:

uses idURI;

[...]

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

警告: 'ó' などの文字を使用すると、これは機能しません...

于 2014-01-20T14:18:57.680 に答える