c# - 读/写 'Extended' 文件属性 (C#)

标签 c# extended-properties

我正在尝试了解如何在 C# 中读取/写入扩展文件属性 例如您可以在 Windows 资源管理器中看到的评论、比特率、访问日期、类别等。 任何想法如何做到这一点? 编辑:我将主要读取/写入视频文件(AVI/DIVX/...)

最佳答案

对于那些不喜欢 VB 的人,这里是用 C# 编写的:

请注意,您必须从“引用”对话框的 COM 选项卡添加对Microsoft Shell 控件和自动化的引用。

public static void Main(string[] args)
{
    List<string> arrHeaders = new List<string>();

    Shell32.Shell shell = new Shell32.Shell();
    Shell32.Folder objFolder;

    objFolder = shell.NameSpace(@"C:\temp\testprop");

    for( int i = 0; i < short.MaxValue; i++ )
    {
        string header = objFolder.GetDetailsOf(null, i);
        if (String.IsNullOrEmpty(header))
            break;
        arrHeaders.Add(header);
    }

    foreach(Shell32.FolderItem2 item in objFolder.Items())
    {
        for (int i = 0; i < arrHeaders.Count; i++)
        {
            Console.WriteLine(
              $"{i}\t{arrHeaders[i]}: {objFolder.GetDetailsOf(item, i)}");
        }
    }
}

关于c# - 读/写 'Extended' 文件属性 (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6958976/

相关文章:

c# - 将数据从数据库返回到 View ?

c# - MySQL 数据库 : Limit user access to data they created

c# - .Net 如何在 Webbrowser 中获取被点击元素的 ID

sql-server-2008 - 将 SQL Server 中的扩展属性抓取到 DataTable 中

javascript - 如何检索 Google 日历事件的扩展属性?

javascript - 从 Outlook 加载项读取扩展属性

windows - 使用 WMI 查询扩展文件属性

c# - 是否有任何与单声道兼容的 3D 点的 .NET 结构或类?

c# - 向 byte.ToString ("x2"提供 IFormatProvider ) 重要吗?

c# - 如何在 DataRow 上使用 ExtendedProperties