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 MVC 利用(aspose+pdfobject.js) 实现在线预览word、excel、ppt、pdf文件 在线预览常用办公文档(word、excel、ppt、pdf)
//pdf模板文件 string tempFile = Path.Combine(fileDire, "temppdf.html"); saveDoc = Path.Combine(fileDire, "viewFiles/onlinepdf.html"); result = PdfToHtml( sourceDoc, System.Web.HttpContext....
在线预览PDF、Word、Txt等文本文件 Microsoft.Office.Interop.Word Microsoft.Office.Interop.Excel
Aspose.Words的使用(打印数据到指定模板Word中,快速方便,Word水印打印),使用MvcPaper控件分页以及自定义分页实现两种方式的分页技术,另外新增了Word、Excel、PPT和PDF在线预览功能,需要VS2010及以上版本打开...
基于.NET开发的一款OFFICE在线预览组件,主要包括word,excel,pdf文档,支持预览的文件格式有doc,docx,xls,xlsx,pdf,服务器无需安装任何组件!支持二次开发!本程序源码已经打包上传至服务器,您可以任意修改分发...
本文主要介绍了Asp.net实现直接在浏览器预览Word、Excel、PDF、Txt文件的具体实例。文章篇尾附上源码下载,有兴趣的朋友可以看下
基于ASP.NET MVC框架的学习项目,包含MVC的框架的设计思路,通俗易懂学习MVC框架,项目中主要使用了Aspose控件通过pdfobject.js实现在线预览功能,快速易懂展示在线预览的精髓。需要VS2012版本及以上版本可以打开。...
先上传Excel、Word、PDF文件,将Excel、Word转换成PDF文件再通过工具将PDF文件转换成flash(.swf)文件,通过插件预览flash文件
基于asp.net实现的实现在线查看(预览)pdf,ppt,word,excel文件源码,使用vs进行开发, 源码运行后,选择相应的文件类型和文件路径即可查看,非常好用,本资源可供参考学习或者二次开发使用。
在线预览常用办公文档(word、excel、ppt、pdf)
Asp.net MVC 利用(aspose+pdfobject.js) 实现在线预览word、excel、ppt、pdf文件,支持在线预览常用办公文档(word、excel、ppt、pdf)
主要用asp.net技术实现直接在线预览word、excel、txt文件,有需要的朋友可以参考下
ASP.Net使用Flexpaper实现word、ppt、excel、pdf、图片在线预览
1.在使用项目时,先安装FlashPaper,安装说明参考 http://www.orsoon.com/soft/1140.html 2.以网站的形式在vs中打开项目,运行即可。 3.安装FlashPaper建议使用32位机,否则安装失败。
本源码主要是ASP.net后台通过相应的类把word\excel\pdf\txt文件转化为html,将地址传回前端,前端获取地址,用iframe进行展现预览。
本源码主要是ASP.net后台通过相应的类把word\excel\pdf\txt文件转化为html,将地址传回前端,前端获取地址,用iframe进行展现预览。
asp.net MVC框架下实现PDF、Word、Excel、PPT文档在线预览功能源码Demo(支持100M以上文档)
深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP.Net应用程序的多进程模型 NET委托...
在线查看word、excel、txt等格式,仿百度文库,对有这方面需要的朋友是很有用的,asp.net如果是需要其它语言的朋友就不要看了。