我正在使用 ASP.NET,并且正在从表单中导入 XML 文件。现在我将其转换为Stream
:
Stream inputStream = XmlFileUploadControl.PostedFile.InputStream;
因为我以后可能需要这个版本。
我想首先检查以确保 XML 文件具有正确的格式,如果是,则显示一些信息:
if (CorrectFileFormat(inputStream))
{
DisplayLicenseInfo(inputStream);
}
else
{
StatusLabel.Text = "Selected file is not a LicensingDiag XML file";
}
CorrectFileFormat()
方法 :
protected Boolean CorrectFileFormat(Stream inputStream)
{
XmlReader reader = XmlReader.Create(inputStream);
if (reader.MoveToContent() == XmlNodeType.Element && reader.Name == "DiagReport")
{
return true;
}
}
DisplayLicenseInfo()
方法 :
protected void DisplayLicenseInfo(Stream inputStream)
{
XmlReader reader = XmlReader.Create(inputStream);
if (reader.MoveToContent() == XmlNodeType.Element && reader.Name == "LicensingStatus")
{
StatusLabel.Text += ("Licensing Status: " + reader.ReadString() + "<br><br>");
}
}
但是,我遇到一个XmlException
说“根级别的数据无效。第 1 行,第 1 位”。这是因为我已经读过一次输入流,需要重置它吗?如果是这样,我该怎么做?