2

我的目标是显示 Excel 文件的日期。但是:如果我从互联网上下载文件,创建日期和修改日期会自动设置为当前时间和日期。我查看了文件的属性,发现在“详细信息”部分中,在个人信息下,有一个名为“来源”的部分,它有一个名为“内容创建”的属性,其中包含原始日期文件。

有没有办法把它变成一个字符串?

谢谢 。

4

3 回答 3

1

您可以使用 Microsoft DSO OLE 文档属性阅读器来获取此信息。

DSOFile.OleDocumentPropertiesClass oleDocumentPropertiesClass = new DSOFile.OleDocumentPropertiesClass();
oleDocumentPropertiesClass.Open("C:\\My Documents\\MyExcelFile.xls");
MessageBox.Show(oleDocumentPropertiesClass.SummaryProperties.DateCreated.ToString());

DSO 文件可以从http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q224/3/51.asp下载

于 2013-07-10T21:54:57.273 回答
1

在 VBA 中,您可以使用ThisWorkbook.BuiltinDocumentProperties("Creation Date")如下方式获取属性:

Sub GetCreationDate()
MsgBox ThisWorkbook.BuiltinDocumentProperties("Creation Date")
End Sub

虽然我没有在 Excel 中使用 c#,但 MSDN 文档有一个示例:Workbook.BuiltinDocumentProperties Property (MSDN)

于 2013-07-10T21:45:53.917 回答
0

这是一个示例,JPW 仍应将他的答案标记为分数。不是这个。

Excel.Application eApp = null;
            Excel.Workbook eBook = null;
                eApp = new Excel.Application();

                eBook = eApp.Workbooks.Open(pathToFile, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

                var docProp = eBook.BuiltinDocumentProperties("Creation Date");
                System.DateTime dt = docProp.Value;
                MessageBox.Show(dt.ToLongTimeString());
于 2013-07-10T23:58:26.080 回答