在web網頁中打開word文檔

1:首先添加下引用,右擊網站→添加引用→彈出的框COM下添加

using Microsoft.Office.Interop.Word;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.Office.Interop.Word;

namespace WebApplication1
{
public partial class word : System.Web.UI.Page
{
public string content;
protected void Page_Load(object sender, EventArgs e)
{
content = Doc2Text(Server.MapPath("images/1.doc"));
}

/// <summary>
/// 返回word文檔的內容
/// </summary>
/// <param name="docFileName">doc/docx文件路徑</param>
/// <returns></returns>
public string Doc2Text(string docFileName)
{
//實例化COM
ApplicationClass wordApp = new ApplicationClass();
object fileobj = docFileName;
object nullobj = System.Reflection.Missing.Value;
//打開指定文件(不同版本的COM參數個數有差異,一般而言除第一個外都用nullobj就行了)
Document doc = wordApp.Documents.Open(ref fileobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj
);
//取得doc文件中的文本
string outText = doc.Content.Text.Replace("\a", "").Replace("\r", "\r\n");//替換空串爲空。(word中\a代表空串)、替換回車爲回車換行

//輸出doc文件
Response.Write(outText);
//關閉文件
doc.Close(ref nullobj, ref nullobj, ref nullobj);
//關閉COM
wordApp.Quit(ref nullobj, ref nullobj, ref nullobj);
//返回
return outText;
}
}
}


可能會出現的錯誤:visual studio 2010 添加引用時出錯:

無法嵌入互操作類型...請改用適用的接口

解決方案:

選中項目中引入的dll

鼠標右鍵,

選擇屬性,

嵌入互操作類型設置爲False

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章