C#開啟WORD文檔內容並顯示
2008-5-6
C#開啟WORD文檔內容並顯示代碼如下:
//在項目引用裡添加上對Microsoft Word 11.0 object library的引用
private void button1_Click(object sender, System.EventArgs e)
{
//調用開啟檔案對話方塊擷取要開啟的檔案WORD檔案,RTF檔案,文字檔路徑名稱
OpenFileDialog opd = new OpenFileDialog();
opd.InitialDirectory = \"c:\\\\\";
opd.Filter = \"Word文檔(*.doc)|*.doc|文字文件(*.txt)|*.txt|RTF文檔(*.rtf)|*.rtf|所有文檔(*.*)|*.*\";
opd.FilterIndex = 1;
if (opd.ShowDialog() == DialogResult.OK && opd.FileName.Length > 0)
{
//建立Word類的執行個體,缺點:不能正確讀取表格,圖片等等的顯示
Word.ApplicationClass app = new Word.ApplicationClass();
Word.Document doc = null;
object missing = System.Reflection.Missing.Value;
object FileName = opd.FileName;
object readOnly = false;
object isVisible = true;
object index = 0;
try
{
doc = app.Documents.Open(ref FileName, ref missing, ref readOnly,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref isVisible, ref missing,
ref missing, ref missing, ref missing);
doc.ActiveWindow.Selection.WholeStory();
doc.ActiveWindow.Selection.Copy();
//從剪下板擷取資料
IDataObject data=Clipboard.GetDataObject();
this.richTextBox1.Text=data.GetData(DataFormats.Text).ToString();
}
finally
{
if (doc != null)
{
doc.Close(ref missing, ref missing, ref missing);
doc = null;
}
if (app != null)
{
app.Quit(ref missing, ref missing, ref missing);
app = null;[Page]
}
}
}
}