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 ...
随机推荐
- Python类__call__()方法
在python中,创建类型的时候定义了__call__()方法,那这个类型创建出来的实例就是可调用的.例def如: class A(object): def __init__(self,name,ag ...
- android模拟器访问PC本地接口
一般来讲PC本地接口是localhost:8080 而在安卓模拟器上用的话,他会映射模拟器本身的,也就是说,可以把模拟器也当成一个PC端来看待,这样会好理解点吧 而在模拟器上想要访问PC本地的loca ...
- C#中DataTable与XML格式的相互转换
1.DataTable转换成XML public string ConvertDataTableToXML(DataTable xmlDS) { MemoryStream stream = null; ...
- 【电子书分享】Learning PySpark下载,包含pdf、epub格式
<Learning PySpark>电子书下载链接: 链接:http://pan.baidu.com/s/1skAC6LZ 密码:kbse,包括pdf.epub格式: (--学习愉快--)
- CentOS 7 本地安装kubernetes
环境 : CentOS7 master 192.168.94.11 node1 192.168.94.22 node2 192.168.94.33 关闭防火墙.SElinux 安装包地址 : 链 ...
- (转载记录)Active Directory 灾难恢复
部分适用于Windows Server 2003. 在IT环境中谁也不能保证软硬件永远没有故障:那么就需要我们IT能够未雨绸缪,尽量避免故障发生,如果故障发生了,我们需要把损失降到最小:那么就需要我们 ...
- ajax 防止重复提交
参考链接:http://www.hollischuang.com/archives/931 http://blog.csdn.net/everything1209/article/details/52 ...
- Lists.newArrayListWithExpectedSize( int estimatedSize)
Lists.newArrayListWithExpectedSize( int estimatedSize) 构造一个期望长度为estimatedSize的ArrayList实例. 源码: publ ...
- Numpy 和 Matplotlib库的学习笔记
Numpy介绍 一个用python实现的科学计算,包括:1.一个强大的N维数组对象Array:2.比较成熟的(广播)函数库:3.用于整合C/C++和Fortran代码的工具包:4.实用的线性代数.傅里 ...
- CodeForces - 468A
Little X used to play a card game called "24 Game", but recently he has found it too easy. ...