是否可以将自定义元数据添加到文件中?

问题描述 投票:0回答:5

我知道每个文件都有标题、主题、关键字和评论等元数据:

enter image description here

但是,如果我需要像标签这样的自定义元数据怎么办?

可以用C#实现吗?

c# file-io metadata xmp
5个回答
8
投票

我知道每个文件都有标题、主题、关键字和评论等元数据

事实并非如此。大多数文件类型没有有“标准”形式的元数据。

特别是,PDF 文件不具有 Windows 资源管理器可识别的属性。

元数据(文件属性)不是文件系统的功能。

  • Office 文件使用允许此类属性的结构化格式。
  • Jpeg 使用 EXIF,一种不同的格式。

7
投票

如果使用 NTFS,您可以将任何您喜欢的内容存储在备用数据流中


3
投票

根据 Jesper 的评论,您可以使用 DSOFile 库读取和写入存储在 ADS 中的自定义属性。
对我来说效果很好,但请注意,当文件传输到不同的文件系统(包括电子邮件)时,属性会丢失。 请参阅 http://www.keysolutions.com/blogs/kenyee.nsf/d6plinks/KKYE-79KRU6 了解 64 位实现,链接到 MS 原始版本和评论。


2
投票

这将取决于您正在使用的文件类型是否支持此功能。例如,这对于文本文件是不可能的。


0
投票

有没有人考虑过使用文件 ID 来实现此目的?可以通过命令获取

fsutil file queryfileid "C:/my/path/example.txt"

这可用于将有关此文件的信息存储在与 id 关联的单独存储文件中。

© www.soinside.com 2019 - 2024. All rights reserved.