案外一つの要素を取り出すのに手数がいるので便利ツールを作ってみた。
XMLは使い方がいろいろっぽく何か正解かは正直分からない。
namespace Xml_Tools
{
internal class Xml
{
public static T? GetValue(XmlDocument doc, XmlNode node, string name)
where T : IParsable
{
var nodeNext = node.SelectSingleNode(name);
var text = nodeNext.InnerText;
T outVal;
T.TryParse(text, CultureInfo.InvariantCulture, out outVal);
return outVal;
}
public static void SetValue<T>(XmlDocument doc, XmlElement elem, string name, T val)
where T : struct
{
var elemChild = doc.CreateElement(name);
elemChild.InnerText = val.ToString();
elem.AppendChild(elemChild);
}
}
}
コメント