asp.net实现word文档在线预览功能的方法
投稿:shichen2014
这篇文章主要介绍了asp.net实现word文档在线预览功能的方法,可实现office文档转html,再在浏览器里面在线浏览,是非常实用的技巧,需要的朋友可以参考下
本文实例讲述了asp.net实现word文档在线预览功能的方法。分享给大家供大家参考。具体实现方法如下:
实现方式:office文档转html,再在浏览器里面在线浏览
1、首先引入com组件中office库,然后在程序集扩展中引入word的dll
2、将Microsoft.Office.Interop.Word的嵌入互操作类型设置为 false,如图
3、主要代码:
复制代码 代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
namespace Wolfy.OfficePreview
{
public class Office2HtmlHelper
{
/// <summary>
/// Word转成Html
/// </summary>
/// <param name="path">要转换的文档的路径</param>
/// <param name="savePath">转换成html的保存路径</param>
/// <param name="wordFileName">转换成html的文件名字</param>
public static void Word2Html(string path, string savePath, string wordFileName)
{
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[] { (object)path, true, true });
Type docType = doc.GetType();
string strSaveFileName = savePath + wordFileName + ".html";
object saveFileName = (object)strSaveFileName;
docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { saveFileName, Word.WdSaveFormat.wdFormatFilteredHTML });
docType.InvokeMember("Close", System.Reflection.BindingFlags.InvokeMethod, null, doc, null);
wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
namespace Wolfy.OfficePreview
{
public class Office2HtmlHelper
{
/// <summary>
/// Word转成Html
/// </summary>
/// <param name="path">要转换的文档的路径</param>
/// <param name="savePath">转换成html的保存路径</param>
/// <param name="wordFileName">转换成html的文件名字</param>
public static void Word2Html(string path, string savePath, string wordFileName)
{
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[] { (object)path, true, true });
Type docType = doc.GetType();
string strSaveFileName = savePath + wordFileName + ".html";
object saveFileName = (object)strSaveFileName;
docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { saveFileName, Word.WdSaveFormat.wdFormatFilteredHTML });
docType.InvokeMember("Close", System.Reflection.BindingFlags.InvokeMethod, null, doc, null);
wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);
}
}
}
调用:
复制代码 代码如下:
Office2HtmlHelper.Word2Html(MapPath("/Doc/分析某网站的SEO策略(外链篇).doc"), MapPath("/Html/"), "分析某网站的SEO策略(外链篇)");
希望本文所述对大家的asp.net程序设计有所帮助。
您可能感兴趣的文章:
- asp.net 在线编辑word文档 可保存到服务器
- asp.net下用Aspose.Words for .NET动态生成word文档中的数据表格的方法
- asp.net下用Aspose.Words for .NET动态生成word文档中的图片或水印的方法
- ASP.NET实现word文档在线预览功能代码
- asp.net下将页面内容导入到word模板中的方法
- ASP.NET操作Word的IIS权限设置
- 从ASP.NET得到Microsoft Word文档的代码
- asp.net(c#)下读取word文档的方法小结
- asp.net中Word转Html的办法(不需要WORD组件)
- asp.net 按指定模板导出word,pdf实例代码
- ASP.NET实现将word文档转换成pdf的方法
- asp.net中如何批量导出access某表内容到word文档
- asp.net操作Word实现批量替换