当前位置: 首页 > 编程笔记 >

C#使用shell32获取文件属性的方法

袁智明
2023-03-14
本文向大家介绍C#使用shell32获取文件属性的方法,包括了C#使用shell32获取文件属性的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了C#使用shell32获取文件属性的方法。分享给大家供大家参考。具体实现方法如下:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Shell32; 
namespace GetFileCreator 
{ 
 class Program 
 { 
  static void Main(string[] args) 
  { 
   //要获取属性的文件路径 
   string filePath = @"e:/f/aa.txt"; 
   //初始化Shell接口 
   Shell32.Shell shell = new Shell32.ShellClass(); 
   //获取文件所在父目录对象 
   Folder folder = shell.NameSpace(filePath.Substring(0, filePath.LastIndexOf('//'))); 
   //获取文件对应的FolderItem对象 
   FolderItem item = folder.ParseName(filePath.Substring(filePath.LastIndexOf('//')+1)); 
   //字典存放属性名和属性值的键值关系对 
   Dictionary<string, string> Properties = new Dictionary<string, string>(); 
   int i =0; 
   while (true) 
   { 
    //获取属性名称 
    string key = folder.GetDetailsOf(null, i); 
    if (string.IsNullOrEmpty(key)) 
    { 
     //当无属性可取时,推出循环 
     break; 
    } 
    //获取属性值 
    string value = folder.GetDetailsOf(item, i); 
    //保存属性 
    Properties.Add(key, value); 
    i++; 
   } 
  } 
 } 
}

希望本文所述对大家的C#程序设计有所帮助。

 类似资料:
  • 我有一个java代码可以将这些值追加到我的属性文件中 我的属性文件将有如下条目。 key1=主机、端口、orcl、用户名、密码 key2=主机、端口、orcl、用户名、密码 key3=主机、端口、orcl、用户名、密码等… 这些key1、key2和key3是连接名。 在进入属性文件之前,首先我必须检查该文件是否提供了连接名条目。我的意思是,如果用户再次使用key1或key2或key3连接名输入值,

  • 本文向大家介绍C#使用文件流读取文件的方法,包括了C#使用文件流读取文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#使用文件流读取文件的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的C#程序设计有所帮助。

  • 本文向大家介绍C#使用System.Environment获取电脑的相关属性,包括了C#使用System.Environment获取电脑的相关属性的使用技巧和注意事项,需要的朋友参考一下 使用System.Environment获取电脑的相关属性,入门案例,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 问题内容: 我为该标题表示歉意。我找不到更好的方法来解释这种情况。 我使用URL http://www.exampledepot.com/egs/java.util/Props.html中所述的Property类加载属性文件。 我的问题是我可以在该属性文件中使用属性吗? 例: test.properties 其他语法有可能吗? 谢谢 问题答案: 以前从未见过。您当然 可以 制作自己的预处理器。只要

  • 问题内容: 我有兴趣使用python从文件中获取更多信息。 我知道使用os.stat(例如下面的代码)会返回文件信息,但是我想从文件中获取其他属性,例如“从哪里来?” 但是,这些不是我感兴趣的属性。我有兴趣获取以下所有属性(尤其是“来源”) 如何获得“来自哪里”字段? 我已经尝试过使用os.access了,但是那并没有返回我想要的,并且一直在搜索os上的文档,所以我不确定我还能尝试什么。 问题答案