有些时候可能需要将Excel,ppt和word转化为html在页面上显示。我从网上查到一些代码,记录在这里以供需要的朋友参考

1.将word转化为html显示

//========================================================================
// 函数名: WordToHtml
/// <summary>
/// Word转成Html
/// </summary>
/// <param name="wordfilename">word文件名</param>
/*=======================================================================
变更记录
序号   更新日期  开发者   变更内容
0001   2008/07/22 张 新建
=======================================================================*/
public static string WordToHtml(object wordfilename)
{
//在此处放置用户代码以初始化页面
word.Application word = new word.Application();
Type wordtype = word.GetType();
word.Documents docs = word.Documents;
//打开文件
Type docstype = docs.GetType();
word.Document doc = (word.Document)docstype.InvokeMember("open", System.Reflection.BindingFlags.InvokeMethod, null, docs, new object[] { wordfilename, true, true });
//转换格式,另存为
Type doctype = doc.GetType();
string wordsavefilename = wordfilename.ToString();
string strsavefilename = wordsavefilename.Substring(, wordsavefilename.Length - ) + "html";
object savefilename = (object)strsavefilename;
doctype.InvokeMember("saveas", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { savefilename, Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatFilteredHTML });
doctype.InvokeMember("close", System.Reflection.BindingFlags.InvokeMethod, null, doc, null);
// 退出 word
wordtype.InvokeMember("quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);
return savefilename.ToString();
}

2.将PPT转化为html显示

//========================================================================
// 函数名: PPTToHtml
/// <summary>
/// PPT转成Html
/// </summary>
/// <param name="pptFilename">PPT文件名</param>
/*=======================================================================
变更记录
序号   更新日期  开发者   变更内容
0001   2008/07/22 张 新建
=======================================================================*/
public string PPTToHtml(string pptFilename)
{
//被转换的html文档保存的位置
string saveFileName = pptFilename + ".html";
Microsoft.Office.Interop.PowerPoint.Application ppt = new Microsoft.Office.Interop.PowerPoint.Application();
Microsoft.Office.Core.MsoTriState m1 = new MsoTriState();
Microsoft.Office.Core.MsoTriState m2 = new MsoTriState();
Microsoft.Office.Core.MsoTriState m3 = new MsoTriState();
Microsoft.Office.Interop.PowerPoint.Presentation pp = ppt.Presentations.Open(pptFilename, m1, m2, m3);
pp.SaveAs(saveFileName, Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsHTML, Microsoft.Office.Core.MsoTriState.msoTriStateMixed);
pp.Close();
//返回文件名
return saveFileName;
}

3.将Excel转化为html显示

//========================================================================
// 函数名: ExcelToHtml
/// <summary>
/// Excel转成Html
/// </summary>
/// <param name="excelFileName">Excel文件名</param>
/*=======================================================================
变更记录
序号   更新日期  开发者   变更内容
0001   2008/07/22 张 新建
=======================================================================*/
public string ExcelToHtml(string excelFileName)
{
//实例化Excel
Microsoft.Office.Interop.Excel.Application repExcel = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook workbook = null;
Microsoft.Office.Interop.Excel.Worksheet worksheet = null;
//打开文件,n.FullPath是文件路径
workbook = repExcel.Application.Workbooks.Open(excelFileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[];
string filesavefilename = excelFileName.ToString();
string strsavefilename = filesavefilename.Substring(, filesavefilename.Length - ) + "html";
object savefilename = (object)strsavefilename;
object ofmt = Microsoft.Office.Interop.Excel.XlFileFormat.xlHtml;
//进行另存为操作
workbook.SaveAs(savefilename, ofmt, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
object osave = false;
//逐步关闭所有使用的对象
workbook.Close(osave, Type.Missing, Type.Missing);
repExcel.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
worksheet = null;
//垃圾回收
GC.Collect();
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
workbook = null;
GC.Collect();
System.Runtime.InteropServices.Marshal.ReleaseComObject(repExcel.Application.Workbooks);
GC.Collect();
System.Runtime.InteropServices.Marshal.ReleaseComObject(repExcel);
repExcel = null;
GC.Collect();
//依据时间杀灭进程
System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName("EXCEL");
foreach (System.Diagnostics.Process p in process)
{
if (DateTime.Now.Second - p.StartTime.Second > && DateTime.Now.Second - p.StartTime.Second < )
{
p.Kill();
}
} return savefilename.ToString();
}

以上是转换成为html文件的方法,转换成功后会在文件夹下会生对应的图片文件夹,和样式文件,和html文件。其中如果Excel中包含多个sheet时,转化后的html会包含多个tab,如果想每个sheet转化为一个页面,则需要修改代码

将Excel,ppt和word转化为html的更多相关文章

  1. asp.net 将ppt,word转化为pdf实现在线浏览详解

    1.首先添加应用:COM里面的Micsosoft Office 12.0 Object Library(VS2013基本都有14.0或者15.0 有的话一样的添加,因为我的没有只有12.0) : 2. ...

  2. PDF/WORD/EXCEL/PPT 文档在线阅读

    查资料看了2种解决方法: 1.通过办公软件dll转换,用flans去看 2.通过Aspose转换成pdf格式,在用js前台读pdf(我用的pdf.js) 今天我解决的就是WORD/EXCEL/PPT ...

  3. Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结

    Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结 1. office word  excel pdf 的web预览要求 ...

  4. 在线文档转换API word,excel,ppt等在线文件转pdf、png

    在线文档转换API提供word,excel,ppt等在线文件转pdf.png等,文档:https://www.juhe.cn/docs/api/id/259 接口地址:http://v.juhe.cn ...

  5. Office办公软件(Excel PPT Word)使用整理

    Office办公软件(Excel PPT Word)使用整理.. -------------- Excel默认打印预览于当前连接的打印机的纸张大小保持一致. Excel sheet不见了怎么办 --- ...

  6. java 如何将 word,excel,ppt如何转pdf--jacob

    问题:java 如果将 word,excel,ppt如何转pdf 我个人的观点:windows server下用 jacob; linux server下 用openoffice.   PS:1.本文 ...

  7. java 如何将 word,excel,ppt如何转pdf --openoffice (1)

    承上启下,可折叠 上一篇说的是:服务器是windows server时,用jacob将msoffice(指的是word,excel,ppt)转换成pdf. 若被部署项目的服务器是centOS等linu ...

  8. Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件

    Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件,用这个控件来导入.导出数据非常方便.其中Aspose.Cells就是用来操作Excel的,功能有很多.我所用的是最基本的 ...

  9. word/excel/ppt 2 PDF

    PHP 实现 word/excel/ppt 转换为 PDF 一般最常见的就是利用OpenOffice来转换,来看看实现的核心代码: class PDFConverter { private $com; ...

随机推荐

  1. 关于ButterKnife 8.1.0使用遇到的问题

    ButterKnife注解方式 和eventbus 差不多 都很好用 @OnClick(R.id.button) void onButtonClick() { //TODO implement Toa ...

  2. Web---JSP-EL表达式

    EL表达式简介 EL 全名为Expression Language. EL主要作用: 获取数据: EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的java对象中获取数据. 执行运算: 利 ...

  3. [codevs]失恋28天题目系列

    失恋28天-追女孩篇 题目描述 Description 呵呵,相信大家失恋33天都看过吧,里面的主人公黄小仙和王小贱都有印象吧!这回我要给大家讲的是我 们班同学的失恋经历,呵呵他总共失恋了28天.但是 ...

  4. 【原】Scala学习资料

    Scala是基于JVM的一种通用函数式也是面向对象编程语言,能和Java.C#等主流的编程语言无缝融合. 下面给大家推荐一些Scala的学习资料,序号靠前的重要性比较高. 1.Scala初学指南 (1 ...

  5. OpenStack swift安装

    由于实验室项目需要云存储系统,因此在实验室服务器上搭建一个基于OpenStack swift的云存储系统. 最开始按照官方网站上介绍的方法,使用SAIO方式安装http://docs.openstac ...

  6. image sensor 积分时间

    integration  time 积分时间 当光源周期与integration time成整数倍时才不会产生flicker integration time即积分时间是以行为单位表示曝光时间(exp ...

  7. HW2.16

    import java.util.Scanner; public class Solution { public static void main(String[] args) { final int ...

  8. Spring ’14 Wave Update: Installing Dynamics CRM on Tablets for Windows 8.1

    One of the added bonuses of Dynamics CRM is its ability go where you go! With the Spring ’14 Wave Up ...

  9. PHP留言板(实例)

    lyb.htm <div class="lymain"> <script language="JavaScript"> function ...

  10. 安装、配置JDK的步骤

    1.配置环境变量,打开我的电脑--属性--高级--环境变量,新建系统变量JAVA_HOME .变量值:jdk的目录,比如d:/java.选择“系统变量”中变量名为“Path”的环境变量双击该变量,把J ...