什么是.Net替换File.Type FileSystemObject属性?

时间:2009-10-17 20:42:26

标签: .net filesystemobject

在经典的Asp中,我们使用File.Type属性从注册表中获取与文件类型相关联的友好名称(例如“.txt”的“文本文档”)。通常替换旧COM对象的FileInfo类不会复制此功能,到目前为止,我在搜索替换时没有取得多大成功。

1 个答案:

答案 0 :(得分:1)

我不知道BCL中的方法,但您可以从注册表中轻松阅读:

using System;
using Microsoft.Win32;

class Program
{
    static void Main(string[] args)
    {

        string extension = ".txt";
        string nicename = "";

        using (RegistryKey key = Registry.ClassesRoot.OpenSubKey(extension))
        {
            if (key != null)
            {
                string filetype = key.GetValue(null) as string;
                using (RegistryKey keyType = Registry.ClassesRoot.OpenSubKey(filetype))
                {
                    if (keyType != null)
                    {
                        nicename = keyType.GetValue(null) as string;
                    }
                }
            }
        }
        Console.WriteLine(nicename);

    }
}

但是,Vladimir提供的link中使用的方法是首选,因为它使用API​​接口。