1. ホーム
  2. c#

[解決済み] ルートレベルのデータが無効です[重複]。

2022-01-29 11:45:45

質問

次のようなXML文書があります。

<?xml version="1.0" encoding="UTF-8"?>
<Offices id="0" enabled="false">
  <office />
</Offices>

C#でアクセスしようとすると。

XmlDocument doc = new XmlDocument();
doc.LoadXml(HttpContext.Current.Server.MapPath("officeList.xml"));

こんなエラーが出ます。

ルートレベルのデータが無効です。1行目、位置1。

この行のどこが悪いのでしょうか?

どのように解決するのですか?

これです。

doc.LoadXml(HttpContext.Current.Server.MapPath("officeList.xml"));

であるべきです。

doc.Load(HttpContext.Current.Server.MapPath("officeList.xml"));

LoadXml() は、ファイル名ではなく、XML文字列を読み込むためのものです。