1
이것은 매우 어리석은 질문 일 수 있지만, 나는이 일을하는 것처럼 보이지 않습니다. 다음과 같은 구조로 XML을 구성하려고하는데 데이터를 읽을 때뿐만 아니라 특정 시점에 추가 데이터를 추가 할 수 있어야합니다. 는 지금 내가 가진 전부입니다XML이 여전히 비어 있습니까?
<?xml version="1.0" encoding="utf-8"?>
<sessions />
내가
<?xml version="1.0" encoding="utf-8"?>
<sessions>
<session date="14.10.2016" time="17:15" amount="3">
<folder>C:\\Users</folder>
<folder>C:\\Test</folder>
<folder>C:\\Asgbsf\\Aleksei</folder>
</session>
<sessions />
내 C# 코드 원하는 것은
static void Main(string[] args)
{
createXML();
Console.WriteLine("Test XML");
folderList.Add("C:\\Users");
folderList.Add("C:\\Test");
folderList.Add("C:\\Asgbsf\\Aleksei");
XML();
Console.ReadKey();
}
static List<String> folderList = new List<String>();
private static string generateRandom(int min, int max)
{
Random rnd = new Random();
return rnd.Next(min, max).ToString();
}
public static string pathToXml = "test_aleksei2.xml";
public static void createXML()
{
XmlTextWriter textWritter = new XmlTextWriter(pathToXml, Encoding.UTF8); //Creating file
textWritter.WriteStartDocument(); //XML header
textWritter.WriteStartElement("sessions"); //XML head
textWritter.WriteEndElement(); //end writing element
textWritter.Close(); //close XmlTextWriter
}
public static void XML()
{
Console.WriteLine("XML function being executed");
XmlDocument document = new XmlDocument(); //using XmlDocument to Read
document.Load(pathToXml); //loading XML
XmlNode element = document.CreateElement("session"); //parent element
XmlAttribute date = document.CreateAttribute("date"); //creating attribute
date.Value = "14.10.2016";
element.Attributes.Append(date); //append attribute to element
XmlAttribute time = document.CreateAttribute("time");
time.Value = generateRandom(0, 23) + ":" + generateRandom(1, 59);
element.Attributes.Append(time);
XmlAttribute amount = document.CreateAttribute("amount");
amount.Value = generateRandom(1, 10);
element.Attributes.Append(amount);
XmlNode folder = null;
for (int i = 0; i < folderList.Count; i++)
{
Console.WriteLine(folderList[i]+" - " + i + "/" + folderList.Count);
folder = document.CreateElement("Folder");
folder.InnerText = folderList[i];
element.AppendChild(folder);
}
document.Save(pathToXml);
}
도움말, 나는 내가 잘못 이해하지 마십시오. 만약 내가 단지 & p라면 나는이 문제가 무엇인지를 배우지 못할 수도있다. 미리 감사한다.
와우, 완벽한 :
당신은 문서를 저장하기 전에이 줄을 추가해야합니다! 들여 쓰기로 작동하지만 추가 요소를 추가 할 수는 없지만 모두 덮어 씁니다. 그러나 더 깊이 파고해야합니다. 대단히 감사합니다 –
기꺼이 도와 드리겠습니다. –
어머, 난 바보 야. 나는 createXML() 함수를 제거하지 않았고, XML 파일을 다시 만들고 있었다. LOL –