protected void btn_ok_Click(object sender, EventArgs e)
    {
        string x = txtpath.Text;
        DataSet ds = GetConnect(x);
        DataTable xDataTable = ds.Tables[0];         string xFile = Server.MapPath("~/") + "action.xml";
        if (File.Exists(xFile))
            File.Delete(xFile);
        //建立Xml的定义声明  
        XmlDocument xmlDoc = new XmlDocument();
        try
        {             XmlDeclaration dec = xmlDoc.CreateXmlDeclaration("1.0", "GB2312", null);             xmlDoc.AppendChild(dec);   //创建根节点   
            XmlElement root = xmlDoc.CreateElement("data");
            xmlDoc.AppendChild(root);
            for (int i = 0; i < xDataTable.Rows.Count; i++)
            {
                var str=xDataTable.Rows[i][1].ToString();
                if(str=="")
                {
                    break;
                }                 if (i < 5)
                {
                    var sdate = "2015年" + (xDataTable.Rows[i][3] + "").Substring(0, 5);
                    var edate = "2015年8月" + ((xDataTable.Rows[i][3] + "").Substring(6, 2));
                    //TimeSpan days=Convert.ToDateTime(edate) - Convert.ToDateTime(sdate);
                    //var n = int.Parse(days.ToString());
                    for (int r = 0; r <= 6; r++)
                    {                         XmlNode item = xmlDoc.CreateElement("item");
                        XmlElement title = xmlDoc.CreateElement("Title");
                        title.InnerText = xDataTable.Rows[i][1] + "";
                        item.AppendChild(title);
                        XmlAttribute xmldate = xmlDoc.CreateAttribute("date");
                        xmldate.Value = "8月"+(Convert.ToDateTime(sdate).AddDays(r).ToString()).Substring(7,3)+"日";
                        title.Attributes.Append(xmldate);
                        XmlAttribute xmlchangguan = xmlDoc.CreateAttribute("changguan");
                        xmlchangguan.Value = xDataTable.Rows[i][4] + "";
                        title.Attributes.Append(xmlchangguan);
                        XmlAttribute xmlisImportion = xmlDoc.CreateAttribute("isImportion");
                        xmlisImportion.Value = "1";
                        title.Attributes.Append(xmlisImportion);                         XmlElement jiaBin = xmlDoc.CreateElement("jiaBin");
                        jiaBin.InnerText = xDataTable.Rows[i][2] + "";
                        item.AppendChild(jiaBin);                         XmlElement time = xmlDoc.CreateElement("time");
                        time.InnerText = "9:00-21:00";
                        item.AppendChild(time);                         XmlElement address = xmlDoc.CreateElement("address");
                        address.InnerText = xDataTable.Rows[i][4] + "";
                        item.AppendChild(address);                         XmlElement zhuBanDanWei = xmlDoc.CreateElement("zhuBanDanWei");
                        zhuBanDanWei.InnerText = xDataTable.Rows[i][5] + "";
                        item.AppendChild(zhuBanDanWei);                         root.AppendChild(item);
                    }
                }
                else
                {
                    XmlNode item = xmlDoc.CreateElement("item");
                    XmlElement title = xmlDoc.CreateElement("Title");
                    title.InnerText = xDataTable.Rows[i][1] + "";
                    item.AppendChild(title);
                    XmlAttribute xmldate = xmlDoc.CreateAttribute("date");
                    xmldate.Value = (xDataTable.Rows[i][3] + "").Substring(0,5);
                    title.Attributes.Append(xmldate);
                    XmlAttribute xmlchangguan = xmlDoc.CreateAttribute("changguan");
                    xmlchangguan.Value = xDataTable.Rows[i][4] + "";
                    title.Attributes.Append(xmlchangguan);
                    XmlAttribute xmlisImportion = xmlDoc.CreateAttribute("isImportion");
                    xmlisImportion.Value = "1";
                    title.Attributes.Append(xmlisImportion);                     XmlElement jiaBin = xmlDoc.CreateElement("jiaBin");
                    jiaBin.InnerText = xDataTable.Rows[i][2] + "";
                    item.AppendChild(jiaBin);                     XmlElement time = xmlDoc.CreateElement("time");
                    int index = (xDataTable.Rows[i][3] + "").IndexOf("日");
                    time.InnerText = (xDataTable.Rows[i][3] + "").Substring(index + 1);
                    item.AppendChild(time);                     XmlElement address = xmlDoc.CreateElement("address");
                    address.InnerText = xDataTable.Rows[i][4] + "";
                    item.AppendChild(address);                     XmlElement zhuBanDanWei = xmlDoc.CreateElement("zhuBanDanWei");
                    zhuBanDanWei.InnerText = xDataTable.Rows[i][5] + "";
                    item.AppendChild(zhuBanDanWei);                     root.AppendChild(item);
                }
            }             xmlDoc.Save(xFile);
            lblshow.InnerText = "成功";
        }
        catch (Exception ex)
        {
            lblshow.InnerText = "失败" + ex.Message + ex.TargetSite;
        }     }
    /// <summary>
    /// 导出EXCEL表中的数据到 myDataSet
    /// </summary>
    public static DataSet GetConnect(string FilePath)
    {
        DataSet myDataSet = new DataSet();
        string strCon = "Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + FilePath + "; Extended Properties=\"Excel 8.0; HDR=YES; IMEX=1;\"";
        if (Path.GetExtension(FilePath).ToLower() == ".xlsx")
            strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FilePath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'";
        OleDbConnection myConn = new OleDbConnection(strCon);
        //条件查询EXCEL表
        string strCom = " SELECT * FROM [Sheet1$] ";
        myConn.Open();
        //打开数据链接,得到一个数据集
        OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);
        //创建一个 DataSet对象         //得到自己的DataSet对象
        myCommand.Fill(myDataSet, "[Sheet1$]");
        //关闭此数据链接
        myConn.Close();
        return myDataSet;
    }

xls到xml的更多相关文章

  1. xls 和 xml 数据 排序 绑定 -原创

    xls 和 xml 排序 xml: <?xml version="1.0" encoding="UTF-8"?> <?xml-styleshe ...

  2. Report_客制化以PLSQL输出XLS标记实现Excel报表(案例)

    2015-02-12 Created By BaoXinjian

  3. Excel和XML文件导入

    using System;using System.Collections;using System.Collections.Generic;using System.Configuration;us ...

  4. xml与Excel转换

    使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...

  5. PHP导出XML格式的EXCEL

    <?php function Export(){ set_time_limit(0); ob_start(); $biz = new ZaikuBiz(); $biz->setSearch ...

  6. 【原创】开源BI领袖-SpagoBI5.X最详细的中文版介绍

    SpagoBI是唯一100%的开源商业智能套件由 Engineering Group的SpagoBI实验室(www.eng.it)开发和管理.它提供了强大的分析能力,从传统的报表和图表功能到自助分析. ...

  7. 30 个 PHP 的 Excel 处理类

    下面的 PHP Excel 处理类中,包含 Excel 读写.导入导出等相关的类,列表如下: PHP Excel Reader classes 1. Read Excel Spreadsheets u ...

  8. Python应用与实践【转】

    转自:http://www.cnblogs.com/skynet/archive/2013/05/06/3063245.html 目录 1.      Python是什么? 1.1.      Pyt ...

  9. 29 个 PHP 的 Excel 处理类

    下面的 PHP Excel 处理类中,包含 Excel 读写.导入导出等相关的类,列表如下: PHP Excel Reader classes 1. Read Excel Spreadsheets u ...

随机推荐

  1. (转)jmeter接口测试--获取token

    Jmeter进行接口测试-提取token 项目一般都需要进行登陆才能进行后续的操作,登陆有时发送的请求会带有token,因此, 需要使用后置处理器中的正则表达式提取token,然后用BeanShell ...

  2. 用matlab画两个曲面的图

    求助!!用matlab画两个曲面的图 这是我写的程序,但是运行不出来,麻烦帮我修改一下,谢谢!!clearallcloseall[x,y]=meshgrid(0:.1:60);z1=(25*y-25* ...

  3. qt 画多边形(实现鼠标拖动节点)

    ---恢复内容开始--- 2018-01-06 这个小例子实现了移动鼠标,鼠标的坐标信息跟随鼠标移动,多边形的实现,鼠标点击可以拖动多边形点的位置,(其中有个问题?我在QMainWindow下,用mo ...

  4. Python练习:小程序,列车出票程序

    # 需求:列车某结车厢座位有15行,5列,初始状态均为'有票',当乘客选了座次,下单后,变更为'已售' # 下单时,要显示所有座位的状态(有票or已售) # 下单完毕后,显示下单后的座位状态. lin ...

  5. HDFS的Java客户端编写

    总结: 之前在教材上看hdfs的Java客户端编写,只有关键代码,呵呵…….闲话不说,上正文. 1. Hadoop 的Java客户端编写建议在linux系统上开发 2. 可以使用eclipse,ide ...

  6. Dataguard配置总结

    Dataguard配置总结 本例情形 在主库存在运行的情况下,增加配置dataguard备库,实现双机热备,高可用性. 主库要求,归档模式,强制归档. 主库idty 备库idty_st 1.密码文件 ...

  7. webpack4 坑收集:html-webpack-plugin在多页面时,无法将optimization.splitChunks提取的公共块,打包到页面中

    问题描述:  有2个页面index.html和product.html,用html-webpack-plugin和optimization.splitChunks的基本配置如下 { template: ...

  8. Hadoop 进程配置总结

    HDFS: NameNode: core-site.xml <property> <name>fs.defaultFS</name> <value>hd ...

  9. js中的数组方法

    数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些: join()push()和pop()shift() 和 unshift()so ...

  10. 记录es在虚拟机的开启步骤

    最近开始接触elasticserach数据库,于是想在虚拟机上装一个练练手,装的时候可是费了好多时间,百度了许多教程,但是教程太多太乱,怕自己容易忘,所以记录一下,但是我主要记录是装好的es数据库如何 ...