• .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         }
  • 相关阅读:
    intellij idea for mac 2018 破解版
    Mac下Supervisor进程监控管理工具的安装与配置
    Mysql千万级大表优化策略
    php7实现基于openssl的加密解密方法
    openresty--centos7下开发环境安装
    webstorm下搭建编译less环境 以及设置压缩css
    七牛图片上传
    聊一聊PHP的依赖注入(DI) 和 控制反转(IoC)
    joomla! 3.X 开发系列教程
    JSON反序列化接口的问题
  • 原文地址:https://www.cnblogs.com/liusuqi/p/3698451.html
Copyright © 2020-2023  润新知