简单无限级树 生成XML代码
2004-08-19 12:25
543 查看
????????private?void?makeXml(string?xmlPath)
????????
{
????????????string?sqlStr?=?"SELECT?*?FROM?tree?ORDER?BY?treenode";
????????????OleDbDataAdapter?da?=?new?OleDbDataAdapter(sqlStr,?conn);
????????????DataTable?dt?=?new?DataTable();
????????????da.Fill(dt);
????????????da.Dispose();
????????????int?ptreeDepth?=?-1;
????????????int?treeDepth?=?0;
????????????XmlTextWriter?xw?=?new?XmlTextWriter(xmlPath,?null);
????????????xw.Formatting?=?Formatting.Indented;
????????????xw.IndentChar?=?' ';
????????????xw.Indentation?=?1;
????????????xw.WriteStartDocument();
????????????xw.WriteStartElement("treeRoot");
????????????foreach(DataRow?dr?in?dt.Rows)
????????????
{
????????????????treeDepth?=?charCount(dr["treenode"].ToString(),?',');
????????????????if(treeDepth?==?ptreeDepth)
????????????????
{
????????????????????xw.WriteEndElement();
????????????????????xw.WriteStartElement("treeBranch");
????????????????}
????????????????else?if(treeDepth?==?ptreeDepth?+?1)
????????????????
{
????????????????????xw.WriteStartElement("treeBranch");
????????????????}
????????????????else
????????????????
{
????????????????????for(int?i?=?0;?i?
????????????????????
{
????????????????????????xw.WriteEndElement();
????????????????????}
????????????????????xw.WriteEndElement();
????????????????????xw.WriteStartElement("treeBranch");
????????????????}
????????????????xw.WriteAttributeString("treeid",?dr["treeid"].ToString());
????????????????xw.WriteAttributeString("treeNode",?dr["treenode"].ToString());
????????????????xw.WriteElementString("treeTitle",?dr["treetitle"].ToString());
????????????????ptreeDepth?=?treeDepth;
????????????}
????????????for(int?i?=?0;?i?
????????????
{
????????????????xw.WriteEndElement();
????????????}
????????????xw.WriteEndElement();
????????????xw.WriteEndElement();
????????????xw.Flush();
????????????xw.Close();
????????}
????????private?void?lbMakeXml_Click(object?sender,?System.EventArgs?e)
????????
{
????????????makeXml(Server.MapPath("tree.xml"));
????????}
相关文章推荐
- 说一下java在win2000的环境变量
- Delphi的对象机制浅探
- google logos
- 网景创始人谈开放源代码得以迅猛发展12大理由
- 动态生成asp.net控件
- 利用 JSP的思想来做ASP
- Java 理论与实践: Web 层的状态复制
- Asp.Net Forums2组件库简要说明
- ASP.NET 中使用 客户端脚本
- 学习j2ee,我们要学习什么?
- 以下一些使用ASP.NET和VISUAL STUDIO.NET2003的经验和技巧
- java建模系列文章(IBM-900)
- ASP常用的函数
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- ASP经典代码例子
- 如何简化JDBC代码
- ASP中存储过程调用的两种方式,以及不采用存储过程的方式比较
- ASP中一个页面多个表单的提交
- 几个典型的ASP应用
- 二十八条改善 ASP 性能和外观的技巧