asp.net中Word转Html的办法(不需要WORD组件)

所属分类: 网络编程 / ASP.NET 阅读数: 991
收藏 0 赞 0 分享
基本思路:
把Word文件上传到服务器,读取其内容存储为Html,然后加载Html内容

1:使用Microsoft.Office.Interop.Word组件
     这是比较常用的一种方式,代码就不贴出了,网上大把的例子
     缺点:服务器需要装Word的组件,并且需要在服务器上设置Docm+对象的权限,如果一台服务器还好,如果项目应用到多台不同服务器,就比较繁琐了
2: OpenXml API
     可以将.docx(word 97-2003 不适用)转化为XML,有了XML,想转成HTML或是其他格式都不再是问题了,此Api需要 .net FreamWork3.5+ Office2007+
3:第三方:例如Aspose.Words(已测试,推荐)
   Aspose提供了各种格式的转换方案,有兴趣的可以进去仔细看一下,.NET Java方向的都有,采用其中Aspose.Words这个Dll,无需安装微软Office组件 即可转换Word(Converting DOC,DOCX to HTML without MS Office Word in .Net)
复制代码 代码如下:

Aspose.Words.Document d = new Aspose.Words.Document(wordPhysicalPath);
            d.Save("d:\\1.html", SaveFormat.Html);

即可存为HTML文档(注意Word里面的图片存储在和Html同级目录下,读取Html内容时需要替换<img src='https://www.jb51.net/CWolf/archive/2011/09/30/为 <img src='+图片虚拟路径)
优点:不需要安装微软Office组件,只需要一个差不多2M的DLL 就可以完成此功能
缺点:Aspose并不是一个开源的组件,国内虽然有破解版,也可反编译后自己进行更改,但是版权问题确实是要考虑的因素

还有一些第三方的其他的项目,大部分是收费的,在此就不一一列举了
更多精彩内容其他人还在看

ASP.Net 之Datalist删除功能详解附代码

ASP.Net 之Datalist删除功能详解附代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET(C#)验证数字的两种方法

ASP.NET(C#)验证数字的两种方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

此页的状态信息无效,可能已损坏 的处理办法及原因分析

此页的状态信息无效,可能已损坏 的处理办法及原因分析,需要的朋友可以参考一下
收藏 0 赞 0 分享

MultiLine 换行后实现读取不换行的具体思路

输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的,下面与大家分享下具体的解决方法
收藏 0 赞 0 分享

swfupload ajax无刷新上传图片实例代码

在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点。这里用到的是一个插件swfupload实现无刷新上传图片,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

静态gb2312编码在项目传值出现中文乱码现象

参考的美工静态页面是gb2312格式的,当此编码拿到项目中后,utf-8编码的系统,加载页面时,会出现样式问题,比如不能正常居中等
收藏 0 赞 0 分享

System.Timers.Timer定时执行程序示例代码

如果是某个逻辑功能的定时,可以将code放到逻辑功能的类的静态构造函数中,在该逻辑类第一次执行时,静态构造函数会被调用,则定时自然启动
收藏 0 赞 0 分享

分享下Asp.Net面试题目及答案集合

这篇文章主要是总结asp.net开发人员在面试过程中常遇到的一些问题小结,需要的朋友可以参考下
收藏 0 赞 0 分享

给自定义Web控件添加事件(前后台代码)

给自定义控件(Web Control)添加事件具体前后台代码如下,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

ASP.NET过滤器的应用方法介绍

ASP.NET过滤器的应用方法介绍,需要的朋友可以参考一下
收藏 0 赞 0 分享
查看更多