新建只有根節點的XML文件
#region"指定位置建XML文件"
private void CreatXML(string filePath)
{
XmlDocument xmldoc;
XmlElement xmlelementRoot;
xmldoc = new XmlDocument();
xmlelementRoot = xmldoc.CreateElement("Records");//創建根節點
xmldoc.AppendChild(xmlelementRoot);
xmldoc.Save(filePath);//存XML
}
#endregion
創建XML結構
#region"新建XML結構同時也可放入數據"
private void btnSave_Click(object sender, EventArgs e)
{
XmlDocument xmldoc=new XmlDocument ();
xmldoc.Load(filePath);
XmlNode root = xmldoc.SelectSingleNode("Records"); //這里是上面建的XML文件所有先從Recordsr起
XmlElement xmlelementName, xmlelementType, xmlelementText, xmlelementTitle,xmlelementTime, xmlelementIfPrompt,xmlelementPromptDate, xmlelementRecord;//宣言結構中的各子節點
xmlelementRecord = xmldoc.CreateElement("Record");//記錄條數及相關信息
xmlelementRecord.SetAttribute("RecordId", RecordId);//給地點Record清加屬性並加入屬性數據
xmlelementRecord.SetAttribute("Datetime", strNowDate);
xmlelementRecord.SetAttribute("ModDatetime", DateTime.Now.ToString("yyyyMMdd tthh:mm:ss"));
xmlelementRecord.SetAttribute("Time", strNowTime);
xmlelementTitle = xmldoc.CreateElement("Title");
xmlelementTitle.InnerText = strTitle;
xmlelementRecord.AppendChild(xmlelementTitle);
xmlelementType = xmldoc.CreateElement("Type");
xmlelementType.InnerText = strType;
xmlelementRecord.AppendChild(xmlelementType);
xmlelementName = xmldoc.CreateElement("Name");
xmlelementName.InnerText = strName;
xmlelementRecord.AppendChild(xmlelementName);
xmlelementText = xmldoc.CreateElement("Text");
xmlelementText.InnerText = strText;
xmlelementRecord.AppendChild(xmlelementText);
xmlelementIfPrompt = xmldoc.CreateElement("Prompt");
xmlelementIfPrompt.InnerText = ifPrompt;
xmlelementRecord.AppendChild(xmlelementIfPrompt);
xmlelementPromptDate = xmldoc.CreateElement("PromptDate");
xmlelementPromptDate.InnerText = strSaveDate;
xmlelementRecord.AppendChild(xmlelementPromptDate);
xmlelementTime = xmldoc.CreateElement("PromptTime");
xmlelementTime.InnerText = strSaveTime;
xmlelementRecord.AppendChild(xmlelementTime);
root.AppendChild(xmlelementRecord);
xmldoc.AppendChild(root);
xmldoc.Save(filePath);
}
#endregion
讀取指定的XML各節點內容
#region"讀取指定recordId的值"
private void GetText(string recordid)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(filePath);//filePath是XML路徑
XmlNode xn = xmldoc.SelectSingleNode("Records");//Reords為根節點
XmlNodeList xnl = xn.ChildNodes;
foreach (XmlNode xnf in xnl)
{
XmlElement xe = (XmlElement)xnf;
strRecordId = xe.GetAttribute("RecordId");//得到子節點中的RecordId的屬性值
if (recordid.Equals(strRecordId))
{
this.txtRecordId.Text = strRecordId;
this.txtText.Text = xnf.SelectSingleNode("Text").InnerText;//得到字節點中子節點Text的值
this.cbType.Text = xnf.SelectSingleNode("Type").InnerText;//得到字節點中子節點Type的值
this.txtTitle.Text = xnf.SelectSingleNode("Title").InnerText;
this.txtSaveDataTime.Text = xnf.SelectSingleNode("PromptTime").InnerText;
if (int.Parse(xnf.SelectSingleNode("Prompt").InnerText.ToString()) >0)
{
this.cbifPrompt.Checked = true;
}
}
}
}
#endregion
浙公网安备 33010602011771号