菜鸟求助:如何在windows应用程序中输入数据,自动生成XML文件 比如说:在TEXTBOX输入学生的姓名,学号,班级点击BUTTON自动生成XML文件并记录数据呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你自己设计一个schema,然后用System.Xml里面的类(比如XmlTextWriter);来输出xml文件就好了。 学习以下System.Xml及相应的namespace, .net提供了多种处理xml的方法,除ado.net外,可以用DOM模型,也可以用XmlTextWriter/reader string strxml=@"<?xml version='1.0' encoding='utf-8' ?><Bill></Bill>"; System.Xml.XmlDocument xmldoc=new System.Xml.XmlDocument(); xmldoc.LoadXml(strxml); forSave(this,ref xmldoc);string path=System.IO.Path.GetDirectoryName(Application.ExecutablePath)"+this.TbxID.Text+@".xml"; xmldoc.Save(path);///forSave 函数private void forSave(System.Windows.Forms.Control crl,ref System.Xml.XmlDocument xmldoc) { for(int i=0;i<crl.Controls.Count;i++) { if(crl.Controls[i].Controls.Count>0) { forSave(crl.Controls[i],ref xmldoc); } if(crl.Controls[i].Name.Length<=3) { continue; } if(crl.Controls[i].Name.Substring(0,3)=="Tbx") { XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name); try { newTitle.InnerText=crl.Controls[i].Text; } catch { newTitle.InnerText=""; } xmldoc["Bill"].AppendChild(newTitle); } if(crl.Controls[i].Name.Substring(0,3)=="Cbx") { XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name); try { newTitle.InnerText=crl.Controls[i].Text; } catch { newTitle.InnerText=""; } xmldoc["Bill"].AppendChild(newTitle); } if(crl.Controls[i].Name.Substring(0,3)=="Lbx") { ListView lvi=crl.Controls[i] as ListView; for(int j=0;j<lvi.Items.Count;j++) { for(int k=0;k<lvi.Items[j].SubItems.Count;k++) { XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name+j.ToString()+k.ToString()); newTitle.InnerText=lvi.Items[j].SubItems[k].Text; xmldoc["Bill"].AppendChild(newTitle); } } } } } xiaomatian(趴趴熊◎%#……※×) 的程序我还看不明白唉!再学学看!~ C#中怎么接收串口发送数据的问题 GridView绑定数据库时点击[高级]按钮以后,两个可选项都是灰色的,无法选中. 关于导入EXCEL 既然大家对我50RMB求C#连数据库的问题这么鄙视 那我散尽所有分数直接求了 ArrayList的问题 ___求大侠解决 串口 通讯问题 请教一个comboBox问题 控件问题??? 在线等答案哦,怎样用c#实现下面这种导航菜单呢?? 各位大哥高手 请问怎么读到物理地址值呢 ??谢谢................ 如何使ActiveReport在IE中横向显示? 高分求C#与WORD连接方法!
System.Xml.XmlDocument xmldoc=new System.Xml.XmlDocument();
xmldoc.LoadXml(strxml);
forSave(this,ref xmldoc);
string path=System.IO.Path.GetDirectoryName(Application.ExecutablePath)"+this.TbxID.Text+@".xml";
xmldoc.Save(path);
///forSave 函数
private void forSave(System.Windows.Forms.Control crl,ref System.Xml.XmlDocument xmldoc)
{
for(int i=0;i<crl.Controls.Count;i++)
{
if(crl.Controls[i].Controls.Count>0)
{
forSave(crl.Controls[i],ref xmldoc);
}
if(crl.Controls[i].Name.Length<=3)
{
continue;
}
if(crl.Controls[i].Name.Substring(0,3)=="Tbx")
{
XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name);
try
{
newTitle.InnerText=crl.Controls[i].Text;
}
catch
{
newTitle.InnerText="";
}
xmldoc["Bill"].AppendChild(newTitle);
}
if(crl.Controls[i].Name.Substring(0,3)=="Cbx")
{
XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name);
try
{
newTitle.InnerText=crl.Controls[i].Text;
}
catch
{
newTitle.InnerText="";
}
xmldoc["Bill"].AppendChild(newTitle);
}
if(crl.Controls[i].Name.Substring(0,3)=="Lbx")
{
ListView lvi=crl.Controls[i] as ListView;
for(int j=0;j<lvi.Items.Count;j++)
{
for(int k=0;k<lvi.Items[j].SubItems.Count;k++)
{
XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name+j.ToString()+k.ToString());
newTitle.InnerText=lvi.Items[j].SubItems[k].Text;
xmldoc["Bill"].AppendChild(newTitle);
}
}
}
}
}