zoukankan      html  css  js  c++  java
  • 获取Word文档的作者和主题

    当然要先添加对Word的组件的引用,添加命名空间的引用,代码:

        Word.Application oWord;
                Word._Document oDoc;
                
    object oMissing = Missing.Value;
                
    object docBuiltInProps;

                
    object Source = @"DocPath";
                
    object Unknown =Type.Missing;
                oWord 
    = new Word.Application();
                
                
    try
                
    {
                    oDoc 
    = oWord.Documents.Open(ref Source,ref Unknown, 
                        
    ref Unknown,ref Unknown,ref Unknown, 
                        
    ref Unknown,ref Unknown,ref Unknown, 
                        
    ref Unknown,ref Unknown,ref Unknown, 
                        
    ref Unknown );

                    docBuiltInProps 
    = oDoc.BuiltInDocumentProperties;
                
                    Type typeDocBuiltInProps 
    = docBuiltInProps.GetType();
                
                
                    
    //获取作者
                    string index = "Author";
                    
    string propsValue;
                    
                    
    object docAuthor = typeDocBuiltInProps.InvokeMember("Item"
                        BindingFlags.Default 
    | 
                        BindingFlags.GetProperty, 
                        
    null,docBuiltInProps, 
                        
    new object[] {index} );
                
                    Type typeDocAuthorProp 
    = docAuthor.GetType();
                    
                    propsValue 
    = typeDocAuthorProp.InvokeMember("Value"
                        BindingFlags.Default 
    |
                        BindingFlags.GetProperty,
                        
    null,docAuthor,
                        
    new object[] {} ).ToString();
                    
                    MessageBox.Show( propsValue,
    "Author" );

                    
    //获取主题
                    index = "Subject";
                    propsValue 
    = "The Subject";
                    
                    
    object docSubjectProp = typeDocBuiltInProps.InvokeMember("Item"
                        BindingFlags.Default 
    | 
                        BindingFlags.GetProperty, 
                        
    null,docBuiltInProps, 
                        
    new object[] {index} );
                
                    Type typeDocSubjectProp 
    = docSubjectProp.GetType();
                    
                    propsValue 
    = typeDocSubjectProp.InvokeMember("Value"
                        BindingFlags.Default 
    |BindingFlags.GetProperty,
                        
    null,docSubjectProp,
                        
    new object[] {} ).ToString();
                    
                    MessageBox.Show( propsValue,
    "Subject" );

                }

                
    finally
                
    {
                    
    //关闭word进程
                    object save = false;
                
                    oWord.Quit(
    ref save,ref Unknown,ref Unknown);
                
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(oWord);    
                }

    最近没作项目的开发,没什么好东西可以拿出手
    这个就献丑了
  • 相关阅读:
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    星空雅梦
    MySQL-数据库三范式
    去除IDEA中xml黄色背景
    git查看commit提交记录详情
    spring-定时任务<task:scheduled-tasks>
  • 原文地址:https://www.cnblogs.com/dahuzizyd/p/44124.html
Copyright © 2011-2022 走看看