一.写在开头 一直想沉下心来研究研究OpenXML编程,可是由于公司编程项目一笔接一笔,很难静下来,所以一直是采用的COM操作Excel.现在终于得闲,特将心得历程记录下来. 今天的第一个实例代码是来源于MSDN,关于如何创建一个空的工作簿文件.不过在正式开始堆砌代码前,首先你的配置好你的开发环境. 1.你得安装VS2010或以上版本,去网上下吧,我不提供链接了: 2.你得安装OpenXMLSDKV25,去网上下吧,我不提供链接了: 二.项目准备 接下来你就需要再VS中创建一个项目,编写代码了.…
一.OpenXML对象结构预览 昨天感受了一下OpenXML的编程,今天开始准备一头扎进OpenXML了.在了解一门新的知识前,首先最重要的是理清逻辑结构,否则学习起来会感觉摸不着北. 1.首先打开VS的对象浏览器,如下图所示: 2.从上图可以看到DocumentFormat.OpenXml命名空间下有很多子项,我们其实主要关注DocumentFormat.OpenXml.Packaging这个命名空间就行了: 3.DocumentFormat.OpenXml.Packaging命名空间下包含了…
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; namespace MediaTools.Tool { public class WordHelper { public static void TxtToword(string docPath,…
using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Spreadsheet; /// <summary>     /// 导出Excel     /// </summary>     public class ExcelExport : IDisposable     {         int rowCount = 0;        …
这里向大家介绍一种读取excel 数据的方法,用的是DoucmentFormat.OpenXml.dll 废话不多说,向大家展示一下在项目中处理过的方法,如果有任何疑问,随时联系我. using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Spreadsheet; using System; using System.Collections.Generic…
1.开始 DocumentFormat.OpenXml是ms官方给一个操作office三大件新版文件格式(.xlsx,.docx,.pptx)的组件:特色是它定义了OpenXml所包含的所有对象(たぶん),能做到精确微调文件内容格式:因此它没有EppPlus那么容易上手,性能也很看使用者的水平.. DocumentFormat.OpenXml的语法很接近直接操作xml,所以使用它来操作Excel,得先熟悉Excel的xml文档结构: ↑已经忘记从哪里找来的了; WorkbookPart包含4个重…
在很多系统中都用到导出,使用过多种导出方式,觉得ClosedXML插件的导出简单又方便. 并且ClosedXML.DocumentFormat.OpenXml都是MIT开源. 首先通过 Nuget 安装 ClosedXML 插件,同时会自动安装 DocumentFormat.OpenXml 插件. 以下就是导出相关的代码: 1.MVC控制器中的导出 // MVC 控制器中 /// <summary> /// 导出 (无论是否需要返回值,都有 Response) /// </summary…
一.悲催的OpenXML操作 学习并使用了一段时间的OpenXML,感觉用这个来操作Excel文件真是一件非常悲催的事情,由于我自己比较熟悉Excel COM的操作,但到了OpenXML中发现,之前所了解的几乎没啥用处,仅仅完成创建工作簿.工作表.读取下单元格的值就得写超级多行的代码.使用OpenXML操作Excel文件还碰到一个难题就是如何读取xls文件.无奈之下,只好去搜搜看有无好用的第三方库. 从网上搜到一篇文章:各Excel第三方库对比文章 大致上有这么一些第三方库: 1.NPOI 2.…
一.OpenXMLSDKToolV25.msi 看了几天的OpenXml,感觉如果完全手写代码,将会是一件非常苦逼的事情,即要分析对应xlsx文件层次结构,以及包含的xml文件的xml标签结构,还要关注代码的实现方式.要完成一些操作,C#代码简直是爆炸式的冗长,看着就感觉头痛,不过还好有OpenXMLSDKToolV25.msi这个神器. 二.查看文档结构 1.首先可以我们可以用它查看已有的xlsx文件的文档结构,比如我打开一个文件后,左侧的树将可以依次展开其所包含的文件结构. 展开左侧的元素,…
二十八.函数进阶 1.   "*"  和  "**" ① 在形参位置时   都是聚合的作用 *args    位置参数→元组 **kwargs   关键字参数→字典 混合时顺序为: 位置  , *args ,  默认值 , **kwargs ② 在实参位置时    都是打散的作用 *args      字符串,元组,字典 → 位置参数 **kwargs     字典 → 关键字参数 2.名称空间    用来存放名字(变量, 函数名, 类名, 引入的模块名)的 1.…
最近这几天研究OpenXML: 这是Open XML的一些介绍: Open XML 介绍:http://baike.baidu.com/view/1201978.htm 下载:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c6e744e5-36e9-45f5-8d8c-331df206e0d0 然后下载一个Simple OOXML, 是OpenXML的一个Extention:http://simpleooxml.codep…
用openxml 生成Excel: private void GenerateExcelUsingOpenxml(DataTable dataTable, string GeneratePath)        {            using (var workbook = SpreadsheetDocument.Create(GeneratePath, DocumentFormat.OpenXml.SpreadsheetDocumentType.Workbook))           …
一:OpenXml Sdk 简介 Open XML标准的简单介绍:Ecma Office Open XML(“Open XML”)是针对字处理文档.演示文稿和电子表格的国际化开放标准,可免费供多个应用程序在多个平台上实现.Microsoft Office(2007.2003.XP.2000).OpenOffice Novell Edition.开源项目 Gnumeric.Neo-Office 2.1 和 PalmOS (Dataviz) 已经支持 Open XML.Corel 已经宣布在 Wor…
OpenXML概述 项目中经常需要操作word,之前的方式是采用COM接口,这个接口很不稳定,经常报错.现在开始采用OpenXML.OpenXML(OOXML)是微软在Office 2007中提出的一种新的文档格式,Office 2007中的Word.Excel.PowerPoint默认均采用OpenXML格式 . OpenXml相对于用MS提供的COM组件来生成WORD,有如下优势: 1.相对于MS 的COM组件,因为版本带来的不兼容问题,及各种会生成WORD半途会崩溃的问题. 2.对比填满一…
OpenXml相对于用MS提供的COM组件来生成WORD,有如下优势: 1.相对于MS 的COM组件,因为版本带来的不兼容问题,及各种会生成WORD半途会崩溃的问题. 2.对比填满一张30多页的WORD来说(包含图,表等),用COM组件来生成会占用20秒,Openxml1秒. 3.MS Word软件太贵了,你的客户装的是开源WORD,如LibreOffice,OpenOffice.这样你就只能用Openxml生成的WORD文档,各种支持MS Word都能打开,避免客户机器上安装MS Word.…
OpenXml相对于用MS提供的COM组件来生成WORD,有如下优势: 1.相对于MS 的COM组件,因为版本带来的不兼容问题,及各种会生成WORD半途会崩溃的问题. 2.对比填满一张30多页的WORD来说(包含图,表等),用COM组件来生成会占用20秒,Openxml1秒. 3.MS Word软件太贵了,你的客户装的是开源WORD,如LibreOffice,OpenOffice.这样你就只能用Openxml生成的WORD文档,各种支持MS Word都能打开,避免客户机器上安装MS Word.…
OpenXml操作Word的一些操作总结. OpenXml相对于用MS提供的COM组件来生成WORD,有如下优势: 1.相对于MS 的COM组件,因为版本带来的不兼容问题,及各种会生成WORD半途会崩溃的问题. 2.对比填满一张30多页的WORD来说(包含图,表等),用COM组件来生成会占用20秒,Openxml1秒. 3.MS Word软件太贵了,你的客户装的是开源WORD,如LibreOffice,OpenOffice.这样你就只能用Openxml生成的WORD文档,各种支持MS Word都…
using System.Collections.Generic; using System.Linq; using DOD = DocumentFormat.OpenXml.Drawing; using DODC = DocumentFormat.OpenXml.Drawing.Charts; using DODS = DocumentFormat.OpenXml.Drawing.Spreadsheet; using DOS = DocumentFormat.OpenXml.Spreadshe…
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packagi…
Download the sample code This visual how-to article presents a solution that creates a Word 2007 document, which itself contains another embedded Word 2007 document. The resulting document is similar to the document that you create when you manually…
Creating basic Excel workbook with Open XML [Quote from]http://www.codeproject.com/Articles/371203/Creating-basic-Excel-workbook-with-Open-XML   This article describes how to create a basic Excel workbook using Open XML. Is your email address OK? You…
数据导出的结果: 步骤1.新建一个Excel 文档,模板根据自己需要设置 步骤2.使用OpenXml  打开Excel 文件 步骤3.点击ReflectCode 功能,生成相应的代码文档 using DocumentFormat.OpenXml.Packaging; using Ap = DocumentFormat.OpenXml.ExtendedProperties; using Vt = DocumentFormat.OpenXml.VariantTypes; using Document…
项目中发现使用OleDb(using System.Data.OleDb)相关对象处理Excel导入功能,不是很稳定经常出问题,需要把这个问题解决掉.项目组提出使用OpenXML来处理Excel的导入.导出问题,出于兴趣对OpenXML了解一下,做了简单Demo. 1.Open XML准备使用Open XML操作Excel需要安装Open XML Format SDK 2.0及其以上版本,其相关对象和接口建立在Open XML SDK CTP 2基础上的,使用前先下载Open XML Forma…
原文地址:http://www.dotblogs.com.tw/chou/archive/2010/04/29/14912.aspx 一.簡介 要將資料寫入 EXCEL 檔案有許多的方法,但假如電腦不想安裝 Microsoft Office EXCEL,又想要寫入資料到 EXCEL,可以使用 NPOI.OpenXML SDK.OpenOffice.org SDK 等方式.本文透過簡單的範例 - 寫入資料到 EXCEL 讓大家初步了解如何使用這些 Library. 附註 : 本文程式為 Windo…
新版本的xlsx是使用新的存储格式,貌似是处理过的XML. 传统的excel处理方法,我真的感觉像屎.用Oldeb不方便,用com组件要实际调用excel打开关闭,很容易出现死. 对于OpenXML我网上搜了一下,很多人没有介绍.所以我就这里推荐下,相信会成为信息系统开发的必备. 先写出个例子,会发现如此的简介: using System; using System.Collections.Generic; using System.Text; using XFormular.config; u…
https://openxmlexporttoexcel.codeplex.com/ http://referencesource.microsoft.com/ 引用: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using Sys…
//https://www.microsoft.com/en-us/download/details.aspx?id=5124 Open XML SDK 2.0 for Microsoft Office //https://www.microsoft.com/en-us/download/details.aspx?id=30425 Open XML SDK 2.5 for Microsoft Office //https://github.com/OfficeDev/Open-Xml-Sdk /…
Openxml读取Excel数据: 有些问题,如果当Cell 里面是 日期和浮点型的话,对应的Cell.DataType==Null,对应的时间会转换为一个浮点型,对于这块可以通过DateTime.FromOADate(double d)转换为时间. 可是缺点的地方就是,如果Cell.DataType ==NULL, 根本无法确认这个数据到底是 浮点型还是[被转换为了日期的浮点数].查阅了很多国外资料,的确国外博客有一部分都反映了.有关Openxml读取Excel时Cell.DataType==…
下面介绍如何在word里面插入图片,顺便小弟发现MSDN官网有完整的OpenXML教程,虽然是全英文的不过还是很有帮助的. Tips,原来摘抄代码里面没有模板,在copy过来发现插入word中的图片大小不一样,我们如何查找设置图片大小带代码的那一块,建议自己用在word里面插入一张图片,通过OpenXml Tools 反编译出C#代码,然后改变图片的大小,再次反编译. 使用byeond compare [http://www.scootersoftware.com/ 下载地址]比较C#代码,就会…
以前用过,aspose.dll处理word ,excel,之后发现 npoi,使用了一段时间,总觉得是第三方,不明白底层的实现,直到最近发现了office openxml ,其实这个技术,很久以前就有了,知识我一直没有发现.openxml 是 zip技术和xml技术的集合.它把office文档,看成一个包,就像是压缩包一样,把文档中的一些东西,如:页面,页脚,注解,等等看作是独立的部件,使用关系,把他们联系起来,一个完整的word文档,就是一个压缩包,里面都是xml文件.openxml 主要是w…