zoukankan      html  css  js  c++  java
  • .NET读取Office文件内容(word、excel、ppt)

    引用命名空间

    1 using Microsoft.Office.Core;
    2 using Word = Microsoft.Office.Interop.Word;
    3 using Excel = Microsoft.Office.Interop.Excel;
    4 using PowerPoint = Microsoft.Office.Interop.PowerPoint;

    Word文件的读取

     1  public string ReadFile()
     2         {
     3             string text = string.Empty;
     4             Word.ApplicationClass app = null;
     5             Word.Document doc = null;
     6             object readOnly = true;
     7             object missing = System.Reflection.Missing.Value;
     8             object fileName = this.FileInstance.FullName;
     9             try
    10             {
    11                 app = new Microsoft.Office.Interop.Word.ApplicationClass();
    12                 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 missing, ref missing, ref missing, ref missing, ref missing);
    13                 text = doc.Content.Text.Replace("
    ", string.Empty).Replace("
    ", string.Empty).Replace("	", string.Empty);
    14             }
    15             catch
    16             {
    17                 
    18             }
    19             finally
    20             {
    21                 doc.Close(ref missing, ref missing, ref missing);
    22                 doc = null;
    23                 app.Quit(ref missing, ref missing, ref missing);
    24                 app = null;
    25             }
    26             return text;
    27         }

    Excel文件的读取

     1 public string ReadFile()
     2         {
     3             string text = string.Empty;
     4             Excel.ApplicationClass app = null;
     5             Excel.Workbook book = null;
     6             object readOnly = true;
     7             object missing = System.Reflection.Missing.Value;
     8             object fileName = this.FileInstance.FullName;
     9             try
    10             {
    11                 app = new Microsoft.Office.Interop.Excel.ApplicationClass();
    12                 book = app.Workbooks.Open(fileName.ToString(), missing, readOnly, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
    13                 foreach (Excel.Worksheet sheet in book.Sheets)
    14                 {
    15                     for (int i = 1; i <= sheet.UsedRange.Cells.Rows.Count; i++)
    16                     {
    17                         for (int j = 1; j <= sheet.UsedRange.Cells.Columns.Count; j++)
    18                         {
    19                             text += ((Excel.Range)sheet.Cells[i, j]).Text.ToString().Replace("
    ", string.Empty).Replace("
    ", string.Empty).Replace("	", string.Empty) + " ";
    20                         }
    21                     }
    22                 }
    23             }
    24             catch
    25             {
    26 
    27             }
    28             finally
    29             {
    30                 book.Close(missing, fileName, missing);
    31                 book = null;
    32                 app.Quit();
    33                 app = null;
    34             }
    35             return text;
    36         }

    PPT文件的读取

     1  public override string ReadFile()
     2         {
     3             string text = string.Empty;
     4             PowerPoint.ApplicationClass app = null;
     5             PowerPoint.Presentation pp = null;
     6             object readOnly = true;
     7             object missing = System.Reflection.Missing.Value;
     8             object fileName = this.FileInstance.FullName;
     9 
    10             try
    11             {
    12                 app = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
    13                 pp = app.Presentations.Open(fileName.ToString(), Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);
    14 
    15                 foreach (PowerPoint.Slide slide in pp.Slides)
    16                 {
    17                     foreach (PowerPoint.Shape shape in slide.Shapes)
    18                     {
    19                         text += shape.TextFrame.TextRange.Text.Replace("
    ", string.Empty).Replace("
    ", string.Empty).Replace("	", string.Empty) + " ";
    20                     }
    21                 }               
    22             }
    23             catch
    24             {
    25 
    26             }
    27             finally
    28             {
    29                 pp.Close();
    30                 pp = null;
    31                 app.Quit();
    32                 app = null;
    33             }
    34 
    35             return text;
    36         }
  • 相关阅读:
    常见算法复杂度解析
    Linux shell脚本根据文件路径信息获取路径和名称
    linux 目录递归替换差异文件
    Linux普通用户具备root用户操作权限
    java线上异常定位工具
    OCR
    国内镜像
    hadoop镜像
    处理Jsp出现乱码问题
    无缝滚动
  • 原文地址:https://www.cnblogs.com/liusuqi/p/3698451.html
Copyright © 2011-2022 走看看