<pre name="code" class="html">
protected void Page_Load(object sender, EventArgs e)
{
string filename = WordToHtml(Server.MapPath(Request.Params["text"]));
string title = Request.Params["title"];
string titleHtml = title;
StreamReader fread = new StreamReader(filename, System.Text.Encoding.GetEncoding("gbk"));
string ss = fread.ReadToEnd();
this.content.InnerHtml = ss;
this.title.InnerText = titleHtml;
fread.Close();
fread.Dispose();
}
/// <summary>
/// word轉成html
/// </summary>
/// <param name="wordFileName"></param>
private 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(0, wordSaveFileName.Length - 3) + "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);
//退出 Word
wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null);
return saveFileName.ToString();
}