`

asp.net word ecxel类型文件在线预览

    博客分类:
  • .NET
阅读更多

asp.net word ecxel类型文件在线预览

首先得引用COM:

Microsoft Excel 10 Object Library

Microsoft Word 10 Object Library

 

或者是 10以上的类库

 

我现在用的是:资源下载: http://download.csdn.net/detail/panfuy/3247641 或者附件

Microsoft Excel 10 Object Library

Microsoft Word 10 Object Library

 

代码如下:

 

using System;  
using System.Data;  
using System.Configuration;  
using System.Collections;  
using System.Web;  
using System.Web.Security;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Web.UI.WebControls.WebParts;  
using System.Web.UI.HtmlControls;  
using System.IO;  
using System.Diagnostics;  
using Word = Microsoft.Office.Interop.Word;  
using Excel = Microsoft.Office.Interop.Excel;  
using System.Reflection;  
using Microsoft.Office.Interop.Excel;  
  
  
public partial class upload_preview : System.Web.UI.Page  
{  
    protected void Page_Load(object sender, EventArgs e)  
    {  
  
        GenerationWordHTML("E://20110502.doc", "E://20110502.html");  
        GenerationExcelHTML("E://20110502.xls", "E://20110502.html");  
    }  
  
    /// <summary>   
    /// Ecxel文件生成HTML并保存   
    /// </summary>   
    /// <param name="FilePath">需要生成的ecxel文件的路径</param>   
    /// <param name="saveFilePath">生成以后保存HTML文件的路径</param>   
    /// <returns>是否生成成功,成功为true,反之为false</returns>   
    protected bool GenerationExcelHTML(string FilePath, string saveFilePath)  
    {  
        try  
        {  
            Excel.Application app = new Excel.Application();  
            app.Visible = false;  
            Object o = Missing.Value;  
  
            ///打开文件   
            /*下面是Microsoft Excel 9 Object Library的写法: */  
            /*_Workbook xls = app.Workbooks.Open(FilePath, o, o, o, o, o, o, o, o, o, o, o, o);*/  
  
            /*下面是Microsoft Excel 10 Object Library的写法: */  
            _Workbook xls = app.Workbooks.Open(FilePath, o, o, o, o, o, o, o, o, o, o, o, o, o, o);  
  
            ///转换格式,另存为 HTML   
            /*下面是Microsoft Excel 9 Object Library的写法: */  
            /*xls.SaveAs(saveFilePath, Excel.XlFileFormat.xlHtml, o, o, o, o, XlSaveAsAccessMode.xlExclusive, o, o, o, o);*/  
  
            /*下面是Microsoft Excel 10 Object Library的写法: */  
            xls.SaveAs(saveFilePath, Excel.XlFileFormat.xlHtml, o, o, o, o, XlSaveAsAccessMode.xlExclusive, o, o, o, o, o);  
  
            ///退出 Excel   
            app.Quit();  
            return true;  
        }  
        catch  
        {  
            return false;  
        }  
        finally  
        {  
            //最后关闭打开的excel 进程   
            Process[] myProcesses = Process.GetProcessesByName("EXCEL");  
            foreach (Process myProcess in myProcesses)  
            {  
                myProcess.Kill();  
            }  
        }  
    }  
  
    /// <summary>   
    /// WinWord文件生成HTML并保存   
    /// </summary>   
    /// <param name="FilePath">需要生成的word文件的路径</param>   
    /// <param name="saveFilePath">生成以后保存HTML文件的路径</param>   
    /// <returns>是否生成成功,成功为true,反之为false</returns>   
    private bool GenerationWordHTML(string FilePath, string saveFilePath)  
    {  
        try  
        {  
            Word.ApplicationClass word = new Word.ApplicationClass();  
            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[] { FilePath, true, true });  
  
            /// 转换格式,另存为 HTML    
            Type docType = doc.GetType();  
  
            /*下面是Microsoft Word 9 Object Library的写法: */  
            /*docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { saveFilePath, Word.WdSaveFormat.wdFormatHTML });*/  
  
            /*下面是Microsoft Word 10 Object Library的写法: */  
            docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod,  
            null, doc, new object[] { saveFilePath, Word.WdSaveFormat.wdFormatFilteredHTML });  
  
            /// 退出 Word   
            wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);  
            return true;  
        }  
        catch  
        {  
            return false;  
        }  
        finally  
        {  
            //最后关闭打开的winword 进程   
            Process[] myProcesses = Process.GetProcessesByName("WINWORD");  
            foreach (Process myProcess in myProcesses)  
            {  
                myProcess.Kill();  
            }  
        }  
    }  
}  

 

 

分享到:
评论

相关推荐

    asp .net 实现word文档在线预览

    在ASP.NET中实现Word文档的在线预览是一项常见需求,尤其在需要用户查看但不需要下载原始文件的场景下。在给定的标题和描述中,提到的技术方案是通过Office-Tools、WF(可能是Windows Forms)以及FlexPaper来实现这...

    Asp.net MVC 实现在线预览word、excel、ppt、pdf文件

    在Asp.net MVC框架中,实现在线预览各种办公文档,如Word、Excel、PowerPoint和PDF文件,是一项常见的需求。这通常涉及到技术栈的整合,包括后端处理和前端展示。以下是一些关键知识点: 1. **Asp.net MVC框架**:...

    Asp.net mvc 在线预览、在线预览Word、Excel、PDF等

    本主题聚焦于如何在Asp.NET MVC中实现在线预览功能,特别是针对Word、Excel和PDF等常见文档格式。这是一项重要的需求,因为用户在不下载文件的情况下能够查看文档内容,提升了用户体验和工作效率。 首先,我们要...

    asp.net实现在线查看(预览)pdf,ppt,word,excel文件.rar

    //pdf模板文件 string tempFile = Path.Combine(fileDire, "temppdf.html"); saveDoc = Path.Combine(fileDire, "viewFiles/onlinepdf.html"); result = PdfToHtml( sourceDoc, System.Web.HttpContext....

    .net mvc在线预览office(word,excel,ppt)

    在.NET MVC框架中,开发人员经常需要处理各种类型的Office文档,如Word、Excel和PowerPoint。为了提供用户友好的体验,让用户可以在浏览器中直接预览这些文件,开发者可以利用Aspose插件。Aspose是一个强大的文件...

    基于ASP.NET MVC项目源码在线预览Word、Excel、PPT、PDF文档

    基于ASP.NET MVC框架的学习项目,包含MVC的框架的设计思路,通俗易懂学习MVC框架,项目中主要使用了Aspose控件通过pdfobject.js实现在线预览功能,快速易懂展示在线预览的精髓。需要VS2012版本及以上版本可以打开。...

    Asp.net MVC 利用(aspose+pdfobject.js) 实现在线预览word、excel、ppt、pdf文件

    本教程将探讨如何利用Asp.NET MVC框架,结合aspose库和pdfobject.js JavaScript库,实现在线预览Word、Excel、PowerPoint(PPT)以及PDF文件。这个功能允许用户无需下载文件,直接在浏览器中查看文档内容,极大地...

    asp.net上传文件预览Excel\Word\PDF文件

    在ASP.NET开发中,有时我们需要实现用户上传文件并进行预览的功能,特别是处理常见的文档格式如Excel、Word和PDF。这个场景中提到的技术方案是通过一系列转换步骤来完成的。以下是对这一技术流程的详细解释: 1. **...

    直接在线预览Word、Excel、TXT文件之ASP.NET

    在ASP.NET中实现直接在线预览Word、Excel、TXT文件是一项常见的需求,特别是在需要提供用户友好界面的企业级应用中。这种功能允许用户无需下载文件就能查看其内容,提高了工作效率并节省了存储空间。以下是如何使用...

    Asp.net实现直接在浏览器预览Word、Excel、PDF、Txt文件(附源码)

    Word、Excel、PDF、Txt文件在线预览的实现方法 ##### Word文档预览 - 使用Microsoft.Office.Interop.Excel命名空间中的类。 - 通过创建Excel.Application实例来操作Excel文件。 - 设置Excel的Visible属性为false...

    基于ASP.NET MVC项目源码完整下载(含Aspose.Cells、Aspose.Words、NPOI、MvcPaper及在线预览Word、Excel等文档

    Aspose.Words的使用(打印数据到指定模板Word中,快速方便,Word水印打印),使用MvcPaper控件分页以及自定义分页实现两种方式的分页技术,另外新增了Word、Excel、PPT和PDF在线预览功能,需要VS2010及以上版本打开...

    ASPNET开发的一款OFFICE在线预览组件源码

    基于.NET开发的一款OFFICE在线预览组件,主要包括word,excel,pdf文档,支持预览的文件格式有doc,docx,xls,xlsx,pdf,服务器无需安装任何组件!支持二次开发!本程序源码已经打包上传至服务器,您可以任意修改分发...

    ASP.NET在线打开Office 文件实例

    在这个"ASP.NET在线打开Office 文件实例"中,我们将探讨如何利用ASP.NET实现用户在Web浏览器中直接预览和编辑Office文档,如Word、Excel和PowerPoint等。 首先,我们要理解Web Apps或Office Online的概念。Web Apps...

    asp.net 实现在线预览文档

    在这个特定的场景中,我们关注的是如何使用ASP.NET来实现在线预览文档的功能,特别是针对Office文件,如Word、Excel或PowerPoint。 在标题中提到的"asp.net 实现在线预览文档",这意味着我们将探讨如何在ASP.NET...

    ASP.NET 仿百度文库文档在线预览

    在本文中,我们将深入探讨如何使用ASP.NET实现一个仿百度文库的文档在线预览功能,支持多种常见文件格式,如PDF、DOC、DOCX、XLS、XLSX、PPT和PPTX。 首先,我们需要了解在线预览的基本原理。在线预览的核心是将...

    收集的一些 asp.net 网页查看 word execl ppt

    标题和描述中提到的"asp.net 网页查看 word excel ppt"涉及到的是在ASP.NET平台上构建网页应用,用于在线预览和处理Microsoft Office文档,包括Word、Excel和PowerPoint。这些文件通常需要通过Web服务或者组件来实现...

    基于asp.net的实现在线查看(预览)pdf,ppt,word,excel文件系统源码.zip

    基于asp.net实现的实现在线查看(预览)pdf,ppt,word,excel文件源码,使用vs进行开发, 源码运行后,选择相应的文件类型和文件路径即可查看,非常好用,本资源可供参考学习或者二次开发使用。

    以html形式显示或预览word,excel,pdf,txt

    综上所述,该源码实现了基于ASP.NET的非HTML文件在线预览功能,涵盖了文件读取、转换和前端展示的全过程,是Web开发中一个实用的工具。通过这样的技术,用户可以在浏览器内便捷地查看各种类型的文档,提升了工作效率...

    ASP.NET MVC 利用(aspose+pdfobject.js) 在线预览常用办公文档(word、excel、ppt、pdf)

    在本主题中,我们将探讨如何利用ASP.NET MVC结合aspose和pdfobject.js库来实现在线预览常用的办公文档,包括Word、Excel、PowerPoint和PDF文件。 首先,我们需要了解**aspose**。Aspose是一系列用于处理多种文件...

    asp.net实现上传下载,导出Excel,word

    在ASP.NET框架中,开发人员经常需要处理文件的上传、下载以及导出数据到Excel或Word等常见任务。这些功能对于构建交互式Web应用程序至关重要,尤其是那些涉及数据管理和报告的应用程序。下面将详细介绍如何在ASP.NET...

Global site tag (gtag.js) - Google Analytics