私はこの方法を持っています:
public void XmlTagCounter(string xmlPath, List<string> elements, List<int> elemCount)
{
XmlTextReader reader = new XmlTextReader(xmlPath);
try
{
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
{
if (elements.Exists(x => x == reader.Name))
{
string curElem = elements.Find(x => x == reader.Name);
int index = elements.IndexOf(curElem);
elemCount[index]++;
}
else
{
elements.Add(reader.Name);
elemCount.Add(1);
}
}
}
}
finally
{
reader.Close();
}
}
XML で使用されるすべてのタグを数えます。しかし、問題があります。DTD 処理を無視したいのです。pathFolder に DTD がないために常に何らかの例外が返されるため、その例外をキャッチしたくありません。XmlTextreader で DtdProcessing を無視するにはどうすればよいですか?
ご協力いただきありがとうございます。