は完璧に動作し、私が使う機能ですXMLファイルを解析する 私はあなたのようなXML区切り文字を格納するのに使用することができます「区切り文字」クラスが含まれている
<startTag></endTag>
本当に使いやすく、そして魔法のように動作します...ご質問があれば私に知らせて
このような関数を使用します。ここでは
XmlDataManager.List<XmlManager.Delimeter> delimeters = new List<XmlManager.Delimeter>("<result>","</result>");
int[] splitIndexArray = { 1 }; // Tells the function where to split in case where the same value occurs multiple times in a line... usually 1 need an entry for each value
String testValue = "";
List<String> values = new List<String> {testValue}
XmlDataManager.ReadValues(delimeters, values, `<xmlFileNameHere>,` splitIndexArray);
クラスです:
public class XmlDataManager
{
const String XML_FILE_WRITE_FAIL = "Could not write to xml file";
const String XML_FILE_READ_FAIL = "Could not read from xml file";
const String XML_FILE_WRITE_BUILDER_FAIL = "Could not write values to string";
/// <summary>
///
/// </summary>
public struct Delimeter
{
internal String StartDelimeter { get { return _startDelimeter; } }
internal String EndDelimeter { get { return _endDelimeter; } }
private readonly String _startDelimeter;
private readonly String _endDelimeter;
public Delimeter(String startDelimeter, String endDelimeter)
{
_startDelimeter = startDelimeter;
_endDelimeter = endDelimeter;
}
public Delimeter(String startDelimeter)
{
_startDelimeter = startDelimeter;
_endDelimeter = String.Empty;
}
}
public static void ReadValuesLineByLine( List<Delimeter> elementDelimeters,
List<String> values,
String fileName,
int[] splitIndexes)
{
try
{
using (StreamReader sr = new StreamReader(fileName))
{
String line = sr.ReadLine();
while (!sr.EndOfStream)
{
for (int i = 0; i <= values.Count-1; i++)
{
if (line.Contains(elementDelimeters[i].StartDelimeter))
{
String[] delimeters = { elementDelimeters[i].StartDelimeter, elementDelimeters[i].EndDelimeter };
String[] elements = line.Split(delimeters, StringSplitOptions.None);
values[i] = elements[splitIndexes[i]];
}
}
line = sr.ReadLine();
}
}
}
catch(Exception ex)
{
throw new Exception(XML_FILE_READ_FAIL, ex);
}
}
}
Peter
ヒント:ルートノードの名前は「whmcsapi」 –
です。[C#でXMLファイルを読み込んで解析する方法は?](http://stackoverflow.com/questions/642293/how-do- i-read-and-parse-an-xml-file-in-c) –
問題は、私はファイルを解析していない、私は文字列でXMLデータを持っています。私が見つけたものは、ファイルの解析方法です。 –