`
lovnet
  • 浏览: 6878255 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Asp.net 2.0 装载XML文件中数据到Excel文件中(示例代码下载)

阅读更多

(一). 概要

从读取XML文件数据,生成Excel文件.

(二).运行效果图示例

1. 要转换数据的XML文件

2. 生成的Excel文件显示效果

(三). 代码

1try
2{
3//要转换的XML文件
4stringXMLFileName=Path.Combine(Request.PhysicalApplicationPath,"book.xml");
5DataSetdsBook=newDataSet();
6dsBook.ReadXml(XMLFileName);
7introws=dsBook.Tables[0].Rows.Count+1;
8intcols=dsBook.Tables[0].Columns.Count;
9
10//将要生成的Excel文件
11stringExcelFileName=Path.Combine(Request.PhysicalApplicationPath,"book.xls");
12if(File.Exists(ExcelFileName))
13{
14File.Delete(ExcelFileName);
15}

16StreamWriterwriter=newStreamWriter(ExcelFileName,false);
17writer.WriteLine("<?xmlversion=\"1.0\"?>");
18writer.WriteLine("<?mso-applicationprogid=\"Excel.Sheet\"?>");
19writer.WriteLine("<Workbookxmlns=\"urn:schemas-microsoft-com:office:spreadsheet\"");
20writer.WriteLine("xmlns:o=\"urn:schemas-microsoft-com:office:office\"");
21writer.WriteLine("xmlns:x=\"urn:schemas-microsoft-com:office:excel\"");
22writer.WriteLine("xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\"");
23writer.WriteLine("xmlns:html=\"http://www.w3.org/TR/REC-html40/\">");
24writer.WriteLine("<DocumentPropertiesxmlns=\"urn:schemas-microsoft-com:office:office\">");
25writer.WriteLine("<Author>AutomatedReportGeneratorExample</Author>");
26writer.WriteLine(string.Format("<Created>{0}T{1}Z</Created>",DateTime.Now.ToString("yyyy-mm-dd"),DateTime.Now.ToString("HH:MM:SS")));
27writer.WriteLine("<Company>YourCompanyHere</Company>");
28writer.WriteLine("<Version>11.6408</Version>");
29writer.WriteLine("</DocumentProperties>");
30writer.WriteLine("<ExcelWorkbookxmlns=\"urn:schemas-microsoft-com:office:excel\">");
31writer.WriteLine("<WindowHeight>8955</WindowHeight>");
32writer.WriteLine("<WindowWidth>11355</WindowWidth>");
33writer.WriteLine("<WindowTopX>480</WindowTopX>");
34writer.WriteLine("<WindowTopY>15</WindowTopY>");
35writer.WriteLine("<ProtectStructure>False</ProtectStructure>");
36writer.WriteLine("<ProtectWindows>False</ProtectWindows>");
37writer.WriteLine("</ExcelWorkbook>");
38writer.WriteLine("<Styles>");
39writer.WriteLine("<Styless:ID=\"Default\"ss:Name=\"Normal\">");
40writer.WriteLine("<Alignmentss:Vertical=\"Bottom\"/>");
41writer.WriteLine("<Borders/>");
42writer.WriteLine("<Font/>");
43writer.WriteLine("<Interior/>");
44writer.WriteLine("<Protection/>");
45writer.WriteLine("</Style>");
46writer.WriteLine("<Styless:ID=\"s21\">");
47writer.WriteLine("<Alignmentss:Vertical=\"Bottom\"ss:WrapText=\"1\"/>");
48writer.WriteLine("</Style>");
49writer.WriteLine("</Styles>");
50writer.WriteLine("<Worksheetss:Name=\"MyReport\">");
51writer.WriteLine(string.Format("<Tabless:ExpandedColumnCount=\"{0}\"ss:ExpandedRowCount=\"{1}\"x:FullColumns=\"1\"",cols.ToString(),rows.ToString()));
52writer.WriteLine("x:FullRows=\"1\">");
53
54//生成标题行
55writer.WriteLine("<Row>");
56foreach(DataColumneachCloumnindsBook.Tables[0].Columns)
57{
58writer.Write("<Cellss:StyleID=\"s21\"><Datass:Type=\"String\">");
59writer.Write(eachCloumn.ColumnName.ToString());
60writer.WriteLine("</Data></Cell>");
61}

62writer.WriteLine("</Row>");
63
64//生成数据记录行
65foreach(DataRoweachRowindsBook.Tables[0].Rows)
66{
67writer.WriteLine("<Row>");
68for(intcurrentRow=0;currentRow!=cols;currentRow++)
69{
70writer.Write("<Cellss:StyleID=\"s21\"><Datass:Type=\"String\">");
71writer.Write(eachRow[currentRow].ToString());
72writer.WriteLine("</Data></Cell>");
73}

74writer.WriteLine("</Row>");
75}

76writer.WriteLine("</Table>");
77writer.WriteLine("<WorksheetOptionsxmlns=\"urn:schemas-microsoft-com:office:excel\">");
78writer.WriteLine("<Selected/>");
79writer.WriteLine("<Panes>");
80writer.WriteLine("<Pane>");
81writer.WriteLine("<Number>3</Number>");
82writer.WriteLine("<ActiveRow>1</ActiveRow>");
83writer.WriteLine("</Pane>");
84writer.WriteLine("</Panes>");
85writer.WriteLine("<ProtectObjects>False</ProtectObjects>");
86writer.WriteLine("<ProtectScenarios>False</ProtectScenarios>");
87writer.WriteLine("</WorksheetOptions>");
88writer.WriteLine("</Worksheet>");
89writer.WriteLine("<Worksheetss:Name=\"Sheet2\">");
90writer.WriteLine("<WorksheetOptionsxmlns=\"urn:schemas-microsoft-com:office:excel\">");
91writer.WriteLine("<ProtectObjects>False</ProtectObjects>");
92writer.WriteLine("<ProtectScenarios>False</ProtectScenarios>");
93writer.WriteLine("</WorksheetOptions>");
94writer.WriteLine("</Worksheet>");
95writer.WriteLine("<Worksheetss:Name=\"Sheet3\">");
96writer.WriteLine("<WorksheetOptionsxmlns=\"urn:schemas-microsoft-com:office:excel\">");
97writer.WriteLine("<ProtectObjects>False</ProtectObjects>");
98writer.WriteLine("<ProtectScenarios>False</ProtectScenarios>");
99writer.WriteLine("</WorksheetOptions>");
100writer.WriteLine("</Worksheet>");
101writer.WriteLine("</Workbook>");
102writer.Close();
103Response.Write("<scriptlanguage=\"javascript\">"+"alert('"+"转换成功!转换后的Excel文件名为:"+ExcelFileName+"')"+"</script>");
104}

105catch(Exceptionex)
106{
107Response.Write("<scriptlanguage=\"javascript\">"+"alert('"+"操作失败!出错信息:"+ex.Message+"')"+"</script>");
108}

(四). 示例代码下载

http://www.cnblogs.com/Files/ChengKing/XMLChangeToExcel.rar

分享到:
评论

相关推荐

    ASP.NET 2.0 XML高级编程

    《ASP.NET 2.0 XML高级编程》是Wrox出版社发布的一本专业指南,专注于探讨在ASP.NET 2.0框架下如何深度利用XML技术。这本书面向已经掌握基础的ASP.NET开发者,旨在提升他们在XML处理方面的技能。XML(eXtensible ...

    ASP.NET 2.0入门经典:C#编程篇.pdf

    8. **配置管理**:ASP.NET 2.0的配置系统允许开发者在不修改代码的情况下更改应用程序设置,如连接字符串、应用程序行为等,这在开发和部署过程中非常实用。 9. **调试和部署**:学习如何在Visual Studio中调试ASP...

    ASP.NET2.0和XML 高级编程(第3版)PDF,本书将交替讲述两种强大的技术,

    书中将交替讲解ASP.NET 2.0和XML的相关内容,展示如何在Web应用程序中无缝集成XML,实现数据的存储、检索和传输。例如,使用XML作为数据源来驱动ASP.NET控件,或者通过ASP.NET Web服务(ASMX)和WCF(Windows ...

    ASP.net 2.0网络编程从入门到精通-修订.rar

    本资源"ASP.NET 2.0网络编程从入门到精通-修订"显然是一个教程文档,旨在帮助初学者及有一定基础的学习者深入理解和掌握ASP.NET 2.0的网络编程技术。 1. **ASP.NET概述** - ASP.NET是.NET Framework的一部分,...

    天轰穿ASP.NET2.0视频教程代码(共两部份)

    此"天轰穿ASP.NET2.0视频教程"针对初学者和进阶开发者,通过详细的教学指导,帮助用户掌握ASP.NET 2.0的核心概念和技术。 1. **ASP.NET 2.0架构** ASP.NET 2.0基于.NET Framework 2.0,引入了统一的页面生命周期...

    ASP.NET 2.0程序设计案例教程(课件)

    6. **配置和部署**:课程可能涉及如何配置ASP.NET应用程序,包括web.config文件的使用,以及如何将应用程序部署到IIS服务器上。 7. **AJAX支持**:ASP.NET 2.0引入了Atlas(后来成为AJAX Control Toolkit),提供...

    asp.net 2.0动态网站开发教程

    ASP.NET 2.0引入了数据绑定和数据源控件的概念,例如SqlDataSource、ObjectDataSource等,这些控件可以方便地连接数据库,自动填充数据到Web控件,如GridView或ListView,极大地简化了数据展示和操作的流程。...

    ASP.NET 2.0入门经典(第4版)

    《ASP.NET 2.0 入门经典》将逐步引导您使用 ASP.NET 2.0 创建动态的、数据驱动的、复杂的Web站点。在本章结束时,我们将解释一些基本的想法并介绍一个完整的示例站点。然后将学习怎样使用 Visual Web Developer ...

    Programming Microsoft ASP.NET 2.0 Applications - Advanced Topics

    2. **控件与数据绑定**:书中会详细介绍ASP.NET 2.0的各种服务器控件,如GridView、DetailsView、FormView等,以及如何利用数据绑定机制(例如,DataSource控件)来连接数据库并展示数据。 3. **状态管理**:ASP...

    ASP.NET2.0实用教程(C#版)书中例子.rar

    这个“ASP.NET2.0实用教程(C#版)书中例子”PPT很可能会涵盖以上这些主题,并通过实例演示如何在实践中应用这些技术。PPT中的例子可能包括创建简单的Web表单、使用控件进行数据绑定、实现用户身份验证以及利用AJAX...

    asp.net 2.0 宝典

    《ASP.NET 2.0 宝典》是一本深度探讨ASP.NET 2.0开发技术的专业书籍,其随书光盘包含了一系列的示例代码和教程,帮助读者深入理解和掌握这个强大的Web应用程序开发框架。虽然上传的文件只是部分内容,但它们涵盖了多...

    Wrox Asp.Net 2.0 Instant Results(asp.net2.0经典案例教程)

    在ASP.NET 2.0中,微软引入了一系列增强功能,如控件生命周期的改进、数据绑定模型的扩展、母版页(Master Pages)和站点导航等,极大地提高了开发效率和代码复用性。书中将深入探讨这些关键特性,并通过实际项目来...

    ASP.NET 2.0高级编程(特别版)》[英文CHM电子书+源代码].

    在全面介绍ASP.NET各种编程技能的同时重点介绍了ASP.NET 2.0版本中的巨大变化,详细阐述了ASP.NET 2.0中所包含的每个新特性。书中提供了大量的实例,可帮助读者快速掌握如何在.NET Framework下构建功能强大的ASP.NET...

    《ASP.NET 2.0 XML 高级编程(第3版)》

    XML在配置文件中也扮演着重要角色,ASP.NET 2.0的Web.config文件就是一个典型的例子。通过配置文件,开发者可以方便地管理应用的设置,如连接字符串、安全性选项等。书中会讲解如何解析和修改这些配置文件,以适应...

    ASP.NET 2.0快速入门(11):ASP.NET 2.0代码国际化

    6. **示例与Demo.rar**:提供的Demo.rar文件可能包含了一个实际的ASP.NET 2.0代码国际化示例项目,其中包括了配置文件、资源文件、以及演示如何在代码和视图中引用资源的网页。通过学习这个示例,你可以更好地理解...

    ASP.NET 2.0功能源码

    这个"ASP.NET 2.0功能源码"压缩包文件很可能是为了帮助学习者理解并探索ASP.NET 2.0的关键特性和功能而提供的实际代码示例。 在ASP.NET 2.0中,有许多关键知识点值得深入探讨: 1. **控件体系**:ASP.NET 2.0引入...

    ASP.NET2.0XML

    此外,ASP.NET 2.0还引入了XmlDataSource控件,它允许直接从XML文件、XML字符串或者XPath查询中获取数据,无需先加载到DOM中。 在配置方面,ASP.NET 2.0大量使用XML格式的配置文件(Web.config),这使得配置更加...

    精通ASP.NET2.0+SQL Server 2005项目开发 源码.rar

    《精通ASP.NET 2.0 + SQL Server 2005项目开发》是一部深度解析Web应用程序构建的教程,尤其关注ASP.NET 2.0框架与SQL Server 2005数据库系统的结合应用。该资源包含9个精心设计的案例,旨在帮助开发者逐步提升在...

Global site tag (gtag.js) - Google Analytics