c#生成与 追加xml
/// <summary>
///
/// </summary>
/// <param name="XmlFile">xml名称 </param>
/// <param name="dt">DataTable</param>
public void SetXml(string XmlFile,DataTable dt)
{
XmlTextWriter xr = new XmlTextWriter(Server.MapPath(XmlFile), System.Text.Encoding.GetEncoding("GB2312"));
xr.Formatting = Formatting.Indented;
xr.WriteStartDocument();
xr.WriteStartElement("dataset");
xr.WriteElementString("updateperi", "24");//sitemap 更新周期
xr.WriteElementString("updatetime", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));//更新时间
xr.WriteElementString("stationname", "我很牛");//来源网站名
xr.WriteElementString("stationurl", "http://www.baidu.com/");//信息来源网站URL
for (int i = 0; i < dt.Rows.Count; i++)
{
xr.WriteStartElement("document");
xr.WriteElementString("comp_name", dt.Rows[i]["company"].ToString());//公司名
if (dt.Rows[i]["address"] != null)
xr.WriteElementString("comp_address", dt.Rows[i]["address"].ToString());//公司地址
else
xr.WriteElementString("comp_address", "");
if (dt.Rows[i]["beizhu"] != null)
xr.WriteElementString("comp_intro", dt.Rows[i]["beizhu"].ToString());//公司简介
else
xr.WriteElementString("comp_intro", "");
if (dt.Rows[i]["zyyewu"] != null)
xr.WriteElementString("comp_pro", dt.Rows[i]["zyyewu"].ToString());//公司产品
else
xr.WriteElementString("comp_pro", "");
if (dt.Rows[i]["url"] != null)
xr.WriteElementString("comp_website", dt.Rows[i]["url"].ToString());//公司网地址
else
xr.WriteElementString("comp_website", "");
if (dt.Rows[i]["jyleixing"] != null)
xr.WriteElementString("comp_protype", dt.Rows[i]["jyleixing"].ToString());//公司产品类别
else
xr.WriteElementString("comp_protype", "");
if (dt.Rows[i]["qyleixing"] != null)
xr.WriteElementString("comp_type", dt.Rows[i]["qyleixing"].ToString());//公司类型
else
xr.WriteElementString("comp_type", "");
if (dt.Rows[i]["email"] != null)
xr.WriteElementString("cont_email", dt.Rows[i]["email"].ToString());//email
else
xr.WriteElementString("cont_email", "");
xr.WriteElementString("link", "http://www.baidu.com/dress_corp/dress_corp-new.aspx?id=" + dt.Rows[i]["id"].ToString());//信息来源
//if (dt.Rows[i]["moel"].ToString() == "0" || dt.Rows[i]["model"].ToString() == "4" || dt.Rows[i]["model"].ToString() == "2")
xr.WriteElementString("regist", "0");//是否受费
//else
// xr.WriteElementString("regist", "1");//是否受费
xr.WriteElementString("AddDate", dt.Rows[i]["datetime"].ToString());
xr.WriteEndElement();
}
dt.Dispose();
xr.WriteEndElement();
xr.WriteEndDocument();
xr.Flush();
xr.Close();
}
protected void Button2_Click(object sender, EventArgs e)
{
try
{
string xmlname = "RssNewImg.xml";
SqlDataReader dr = Rss_News.GetImgInfo(50);
DB2rss1(xmlname, dr);
Jsp.Alert("Rss生成成功!");
}
catch
{
Jsp.Alert("带图片的Rss生成失败!");
}
}
/// <summary>
/// 生成 奇搜XMl
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button3_Click(object sender, EventArgs e)
{
string time = DateTime.Now.ToString();
string XmlSearchName = Convert.ToDateTime(time.ToString()).ToString("yyyyMM") + "Search.xml";
if (File.Exists(Server.MapPath(XmlSearchName)))
{
Jsp.Alert("你已经生成过本月的xml了 直接追加就可以了");
}
else
{
try
{
string Addtime = DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-1";//本月的一号
string xmlname = XmlSearchName;
DataTable dt = Rss_News.GetSearch(Addtime);
string dirName = "";
SetXml(xmlname, dt);
Jsp.Alert("XMl生成成功!");
}
catch
{
Jsp.Alert("Xml生成失败!");
}
}
}
protected void Button4_Click(object sender, EventArgs e)
{
try
{
string time = DateTime.Now.ToString();
string XmlSearchName = Convert.ToDateTime(time.ToString()).ToString("yyyyMM") + "Search.xml";
if (File.Exists(Server.MapPath(XmlSearchName)))
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load(Server.MapPath(XmlSearchName));
XmlNode xdate = xdoc.SelectSingleNode("dataset/document/AddDate");//取出xml 中第一条的时间
string dateTime = xdate.InnerText;
dateTime = Convert.ToDateTime(dateTime).ToString();
// Jsp.Alert(dateTime);
DataTable dt = Rss_News.ADDSearch(dateTime);
//XmlNode root = xdoc.DocumentElement;
XmlNode xd = xdoc.SelectSingleNode("dataset");
XmlNode Addxd = xdoc.SelectSingleNode("dataset/stationurl");
for (int i = 0; i < dt.Rows.Count; i++)
{
XmlElement xe1 = xdoc.CreateElement("document");
XmlElement xesub1 = xdoc.CreateElement("comp_name");
if (dt.Rows[i]["address"] != null)
xesub1.InnerText = dt.Rows[i]["company"].ToString();//设置文本节点
else
xesub1.InnerText = "";
xe1.AppendChild(xesub1);//添加到<book>节点中
XmlElement xesub2 = xdoc.CreateElement("comp_address");
if (dt.Rows[i]["address"] != null)
xesub2.InnerText = dt.Rows[i]["address"].ToString();
else
xesub2.InnerText = "";
xe1.AppendChild(xesub2);
XmlElement xesub3 = xdoc.CreateElement("comp_intro");
if (dt.Rows[i]["beizhu"] != null)
xesub3.InnerText = dt.Rows[i]["beizhu"].ToString();
else
xesub3.InnerText = "";
xe1.AppendChild(xesub3);
XmlElement xesub4 = xdoc.CreateElement("comp_pro");
if (dt.Rows[i]["zyyewu"] != null)
xesub4.InnerText = dt.Rows[i]["zyyewu"].ToString();//设置文本节点
else
xesub4.InnerText = "";
xe1.AppendChild(xesub4);//添加到<book>节点中
XmlElement xesub5 = xdoc.CreateElement("comp_website");
if (dt.Rows[i]["url"] != null)
xesub5.InnerText = dt.Rows[i]["url"].ToString();
else
xesub5.InnerText = "http://www.baidu.com";
xe1.AppendChild(xesub5);
XmlElement xesub6 = xdoc.CreateElement("comp_protype");
if (dt.Rows[i]["jyleixing"] != null)
xesub6.InnerText = dt.Rows[i]["jyleixing"].ToString();
else
xesub6.InnerText = "";
xe1.AppendChild(xesub6);
XmlElement xesub7 = xdoc.CreateElement("cont_email");
if (dt.Rows[i]["email"] != null)
xesub7.InnerText = dt.Rows[i]["email"].ToString();//设置文本节点
else
xesub7.InnerText = "";
xe1.AppendChild(xesub7);//添加到<book>节点中
XmlElement xesub8 = xdoc.CreateElement("link");
xesub8.InnerText = "http://www.baidu.com/dress_corp/dress_corp-new.aspx?id=" + dt.Rows[i]["id"].ToString();
xe1.AppendChild(xesub8);
XmlElement xesub9 = xdoc.CreateElement("regist");
xesub9.InnerText = "0";
xe1.AppendChild(xesub9);
XmlElement xesub10 = xdoc.CreateElement("datetime");
xesub10.InnerText = dt.Rows[i]["datetime"].ToString();//设置文本节点
xe1.AppendChild(xesub10);//添加到<document>节点中
//xd.AppendChild(xe1);//添加到<dataset>节点中
xd.InsertAfter(xe1, Addxd);
xdoc.Save(Server.MapPath(XmlSearchName));
}
Jsp.Alert("追加成功");
}
else
{
Jsp.Alert("您还没有生成本月的xml请先生成");
}
}
catch
{
Jsp.Alert("追加失败!");
}
}
protected void Button5_Click(object sender, EventArgs e)
{
string time = DateTime.Now.ToString();
string XmlSearchName = Convert.ToDateTime(time.ToString()).ToString("yyyyMM") + "Search.xml";
if (File.Exists(Server.MapPath(XmlSearchName)))
{
try
{
string Addtime = DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-1";//本月的一号
string xmlname = XmlSearchName;
DataTable dt = Rss_News.GetSearch(Addtime);
string dirName = "";
SetXml(xmlname, dt);
Jsp.Alert("XMl重新生成成功!");
}
catch
{
Jsp.Alert("Xml重新生成失败!");
}
}
else
{
try
{
string Addtime = DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-1";//本月的一号
string xmlname = XmlSearchName;
DataTable dt = Rss_News.GetSearch(Addtime);
string dirName = "";
SetXml(xmlname, dt);
Jsp.Alert("XMl生成成功!");
}
catch
{
Jsp.Alert("Xml生成失败!");
}
}
}
protected void Button6_Click(object sender, EventArgs e)
{
if (this.TextBox1.Text.Trim() != "" && this.TextBox2.Text.Trim() != "" && this.TextBox3.Text.Trim() != "")
{
string XmlSearchName = this.TextBox3.Text.Trim();
//if (File.Exists(Server.MapPath(XmlSearchName)))
//{
// Jsp.Alert("你已经生成过本月的xml了 直接追加就可以了");
//}
//else
//{
try
{
//string Addtime = DateTime.Now.Year.ToString() +"-"+ DateTime.Now.Month.ToString()+"-1";//本月的一号
string xmlname = XmlSearchName;
//DataTable dt = Rss_News.GetSearch(Addtime);
string beginTime = this.TextBox1.Text.Trim();
string endTime = this.TextBox2.Text.Trim();
DataTable dt = Rss_News.GetSearch_test(beginTime, endTime);
string dirName = "";
SetXml(xmlname, dt);
Jsp.Alert("XMl生成成功!");
}
catch
{
Jsp.Alert("Xml生成失败!");
}
}
else
{
Jsp.Alert("数据填写不完整");
}
//}
}
浙公网安备 33010602011771号