WriteXML类:
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using System.Text;
using System.Collections.Generic;
using CBD.Bll;
using CBD.Mod;
/// <summary>
///WriteXML 的摘要说明
/// </summary>
public class WriteXML
{
/// <summary>
/// 生成文件
/// </summary>
/// <param name="val"></param>
/// <param name="filename"></param>
public static void CreateXml(Page p,string val, string filename)
{
UnicodeEncoding ucode = new UnicodeEncoding();
StreamWriter sw = new StreamWriter(p.Server.MapPath(filename));
sw.WriteLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
sw.WriteLine(val);
sw.Close();
sw.Dispose();
}
/// <summary>
/// 转换成XML格式字符串
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
public static string DataTableToXml()
{
List<Img> imgs = new ImgManager().GetAll(0, 10); //获取数据
StringBuilder strXml = new StringBuilder();
strXml.AppendLine("<tu>");
strXml.AppendLine("<images>");
for (int i = 0; i < imgs.Count; i++)
{
strXml.AppendLine("<image src=" + imgs[i].Img1 + "\" /> ");
}
strXml.AppendLine("</images> ");
strXml.AppendLine("<note>");
for (int i = 0; i < imgs.Count; i++)
{
strXml.AppendLine("<txt nr=\"" + imgs[i].Title + "\" /> ");
}
strXml.AppendLine("</note> ");
strXml.AppendLine("<link>");
for (int i = 0; i < imgs.Count; i++)
{
strXml.AppendLine("<url site=\"" + imgs[i].Url + "\" />");
}
strXml.AppendLine("</link> ");
strXml.AppendLine("</tu>");
return strXml.ToString();
}
}
生成方法:
//生成XML
StringBuilder strb = new StringBuilder();
strb.Append(WriteXML.DataTableToXml());
WriteXML.CreateXml(Page, strb.ToString(), "~/imgs.xml");
生成结果:
<?xml version="1.0" encoding="utf-8"?>
<tu>
<images>
<image src="IndexImg/2011-9/634527379996093750.jpg" />
<image src="IndexImg/2011-9/634509851103906250.jpg" />
<image src="IndexImg/2011-9/634509850949687500.jpg" />
<image src="IndexImg/2011-9/634509850767031250.jpg" />
<image src="IndexImg/2011-9/634509850573125000.jpg" />
</images>
<note>
<txt nr="aa" />
<txt nr="4444" />
<txt nr="33333" />
<txt nr="22222" />
<txt nr="111111" />
</note>
<link>
<url site="http://" />
<url site="http://ntcbd.nnu.com.cn" />
<url site="http://ntcbd.nnu.com.cn" />
<url site="http://ntcbd.nnu.com.cn" />
<url site="http://ntcbd.nnu.com.cn" />
</link>
</tu>
- 本文标题: ASP.NET动态生成XML文件节点控制等
- 文章分类:【.NET/Web】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.