如何在C#中打开文件并更改其属性?
我需要打开Microsoft Word 2003文件并更改其文件属性。例如,在“摘要”选项卡中更改主题如何在C#中打开文件并更改其属性?,c#,ms-word,C#,Ms Word,我需要打开Microsoft Word 2003文件并更改其文件属性。例如,在“摘要”选项卡中更改主题 我可以想出两种方法: 使用Microsoft Office API。你 必须在您的文档中引用它们 项目,您将需要 将文件转换为Word 2003 XML格式,并在中更改该值 XML文档。这是MSDN 关于该文件的文件 特性: 如果可以的话,我会选择第二个选项,因为这样您就不必依赖系统上安装的Word。Microsoft提供了一个非常有用的称为DSOFile的小程序集。通过在项目中对其进
我可以想出两种方法:
- 使用Microsoft Office API。你 必须在您的文档中引用它们 项目,您将需要
- 将文件转换为Word 2003 XML格式,并在中更改该值 XML文档。这是MSDN 关于该文件的文件 特性:
如果可以的话,我会选择第二个选项,因为这样您就不必依赖系统上安装的Word。Microsoft提供了一个非常有用的称为DSOFile的小程序集。通过在项目中对其进行引用,可以修改Office文档属性。它不一定允许您打开实际的Office文件属性对话框,但您当然可以模拟它 据微软称: Dsofile.dll文件允许您编辑 执行此操作时的Office文档属性 没有安装Office 有关更多详细信息和下载链接,请访问 下面是我多年前使用的一些(非常旧的)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这个。。回答得很好。