xls到xml
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的更多相关文章
- xls 和 xml 数据 排序 绑定 -原创
xls 和 xml 排序 xml: <?xml version="1.0" encoding="UTF-8"?> <?xml-styleshe ...
- Report_客制化以PLSQL输出XLS标记实现Excel报表(案例)
2015-02-12 Created By BaoXinjian
- Excel和XML文件导入
using System;using System.Collections;using System.Collections.Generic;using System.Configuration;us ...
- xml与Excel转换
使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...
- PHP导出XML格式的EXCEL
<?php function Export(){ set_time_limit(0); ob_start(); $biz = new ZaikuBiz(); $biz->setSearch ...
- 【原创】开源BI领袖-SpagoBI5.X最详细的中文版介绍
SpagoBI是唯一100%的开源商业智能套件由 Engineering Group的SpagoBI实验室(www.eng.it)开发和管理.它提供了强大的分析能力,从传统的报表和图表功能到自助分析. ...
- 30 个 PHP 的 Excel 处理类
下面的 PHP Excel 处理类中,包含 Excel 读写.导入导出等相关的类,列表如下: PHP Excel Reader classes 1. Read Excel Spreadsheets u ...
- Python应用与实践【转】
转自:http://www.cnblogs.com/skynet/archive/2013/05/06/3063245.html 目录 1. Python是什么? 1.1. Pyt ...
- 29 个 PHP 的 Excel 处理类
下面的 PHP Excel 处理类中,包含 Excel 读写.导入导出等相关的类,列表如下: PHP Excel Reader classes 1. Read Excel Spreadsheets u ...
随机推荐
- Python3.0科学计算学习之绘图(一)
基本绘图: (1) plot是标准的绘图库,调用函数plot(x,y)就可以创建一个带有绘图的图形窗口(其中y是x的函数).输入的参数为具有相同长度的数组(或列表):或者plot(y)是plot(r ...
- FB面经Prepare: Friends Recommendation
有个getFriend() API, 让你推荐你的朋友的朋友做你的朋友,当然这个新朋友不能是你原来的老朋友 package fb; import java.util.*; public class R ...
- carbondata-summary
源码 http://www.zhuyongpeng.cn/1699.html 融合数据白皮书:Apache CarbonData成为主流融合存储技术 http://cloud.yesky.com/46 ...
- PeopleSoft Excel To CI
Excel to CI 链接信息要注意,HTTP还是HTTPS, 端口号从链接可以看到,没有的话可能是默认80端口. 像一下这个页面也可以用CI 导入数据(secondary page)
- it入门之:学会使用Git 分布式版本控制工具
环境:window 工具:git & TortoiseGit 下载安装以及配置环境变量 :略略略 创建Github账户:登录https://github.com/用自己的常用邮箱创建账户,用来 ...
- windows10误删Administrator用户的家目录之后
今天在玩Windows10的用户管理的时候,把Administrator用户给开启了,然后还用这个用户登录了系统. 结果就是,第一次登录的时候,闪过一条条初始化配置欢迎信息,Windows系统为Adm ...
- NGUI之实现连连看小游戏
一,部分游戏规则如下: 二,代码如下: 1. 游戏逻辑核心代码 using System.Collections.Generic; using UnityEngine; namespace Modul ...
- 功能比较全的StackExchange.Redis封装帮助类(.Net/C#)
Redis官网https://redis.io/ 以下内容未全部验证,如有问题请指出 //static NewtonsoftSerializer serializer = new Newtonsoft ...
- 【.NET】 HTTP协议之webrequest
零——简介 一.GET 二.POST emmm在post这里在了很多跟头,记忆很深刻. 2.1 传json的Post:简单粗暴的两个参数 一个是网址(接口),一个是json数据 分为了六个步骤 : ...
- JS实现div的抖动:缓动式抖动
代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...