我需要打开一个Microsoft Word 2003文件并更改其文件属性。如更改摘要选项卡中的主题。
alt text http://www.jegsworks.com/Lessons/words/report/dialog-fileproperties-summary.gif如何在C#中打开文件并更改其属性?
3
A
回答
8
Microsoft提供了一个非常有用的小程序集DSOFile。通过在项目中引用它,您可以修改Office文档属性。它不一定会让你打开实际的Office文件的属性对话框,但你当然可以模拟它。
据微软称:
的Dsofile.dll文件允许您在做 没有安装Office
更多细节和下载链接可以在这里找到你编辑 Office文档属性http://support.microsoft.com/kb/224351
这是一段代码,我很久以前就使用了一些(很老的)VB代码。对不起,我还没有转换到C#,并知道它是一个类的一部分,所以有实例变量的引用。尽管如此,它应该很容易理解和隐藏自己的需求:
Private Sub ProcessOfficeDocument(ByVal fileName As String)
Dim docDSO As New DSOFile.OleDocumentPropertiesClass
Dim docTitle, docModified, docAuthor, docKeywords As String
Try
docDSO.Open(fileName, True)
Dim docSummary As DSOFile.SummaryProperties = docDSO.SummaryProperties
docTitle = docSummary.Title
docAuthor = docSummary.Author
docKeywords = docSummary.Keywords
docModified = CStr(docSummary.DateLastSaved)
If (Not String.IsNullOrEmpty(docTitle)) Then
_Title = docTitle
End If
If (Not String.IsNullOrEmpty(docAuthor)) Then
_Author = docAuthor
End If
If (Not String.IsNullOrEmpty(docModified)) Then
_DateModified = DateTime.Parse(docModified)
End If
Catch ex As Exception
'Do whatever you need to do here...'
Finally
If (Not docDSO Is Nothing) Then
docDSO.Close()
End If
End Try
End Sub
5
我能想到的2种方法来做到这一点:
- 使用Microsoft Office的API。您 必须在您的 项目中参考它们,并且您将需要 Primary Interop Assemblies。
- 将文件转换为Word 2003 XML格式,并在 XML文档中更改该值。这里是MSDN文档 对文档 属性: http://msdn.microsoft.com/en-us/library/aa223625(office.11).aspx
我会选择第二个选项去,如果可以的话,因为要在系统上安装的方式,你不必依赖字。
相关问题
- 1. 如何打开位图文件,将其更改并保存?
- 2. 如何打开文件并将其放入数组中,C
- 3. 在C++中打开Unicode文本文件并显示其内容
- 4. 如何更改c#中XML文件的属性值?
- 5. 如何在C#.NET中更改事件属性并创建新事件
- 6. 如何访问GridView中的特定行并更改其属性?
- 7. 如何更改cfg.xml文件的属性?
- 8. 如何缓存XML文件并在Rails中读取其属性?
- 9. 如何设置xml属性并将更改保存到文件?
- 10. C#如何更改文件属性和复制
- 11. 如何使用.properties文件更改ant属性位置属性
- 12. 打开Windows文件/文件夹的属性由C
- 13. 如何在C++中使用ifstream打开并读取文件?
- 14. 根据其他控件中的属性更改属性 - WPF
- 15. 在c中打开文件#
- 16. 打开文件并输出在C
- 17. 如何在Odoo JavaScript中打开某些表单视图并更改其字段?
- 18. C#打开Url并下载文件,文件名更改的最后部分
- 19. 如何在Libre Office中打开文件并将其保存为.doc文件?
- 20. 如何将文本文件更改为其属性已更改为文本的jmx文件?
- 21. 如何重试打开Java中的属性文件
- 22. 打开附件进行编辑并保存对其的更改
- 23. 不用在bash中打开文件而对文件进行理性更改?
- 24. 如何更改选项卡控件的字体属性而不更改C#中其子控件的字体?
- 25. watir脚本如何在其他文件夹中打开文件?
- 26. 如何更改列属性在SQL中?
- 27. 如何在InstallScript中更改属性
- 28. 如何在属性值更改时更新从属属性?
- 29. 如何在父树属性在树视图中更改时更改子属性?
- 30. 如何在Perl中打开二进制文件,仅更改第一个字节并将其写回?
我会+5这个,如果我可以..很好的答案。 – torial 2008-12-08 19:24:00