/// <summary> /// 将Document的信息写到指定的路径,根节点采用指定名 /// </summary> /// <param name="filePath"></param> /// <param name="rootNodeName"></param> public void Write(string filePath, string rootNodeName) { IGroupNode rootNode = new DefaultGroupNode(); rootNode.Name = rootNodeName; rootNode.Add(Head.Items); rootNode.Add(Data.Items); SimpleXmlManager.Default.Write(rootNode, filePath); }
public void TestCreateAndReadFile() { string filePath = "CreateAndReadFile.xml"; string checkPath = "CreateAndReadFile_Test.xml"; Document document = Document.NewDocument(); ContentNode contentNode = new ContentNode(); DefaultGroupNode groupNode = new DefaultGroupNode(); contentNode.Attributes.Add("attri0", "value"); for (int i = 0; i < 3; ++i) { document.Head.Items.Add(new ContentNode() { Content = string.Format("Content-{0}", i), Name = string.Format("HeadNode{0}", i), }); } document.Head.Items.Add(contentNode); for (int i = 0; i < 3; ++i) { document.Data.Items.Add(new ContentNode() { Content = string.Format("Data-{0}", i), Name = string.Format("GroupNode{0}", i), }); } document.Data.Items.Add(contentNode); document.Data.Items.Add(groupNode); document.Write(filePath); Document readDocument = Document.ReadAllFrom(filePath); readDocument.Write(checkPath); string fileText = File.ReadAllText(filePath); string outputText = File.ReadAllText(checkPath); Assert.AreEqual(fileText, outputText); Assert.IsTrue(readDocument.Data.Items.LastChild is IGroupNode); Assert.IsTrue(readDocument.Head.Items.LastChild is IContentNode); }