当前位置:编程学习 > C#/ASP.NET >>

如何创建FileSystemInfo的实例?

如何创建FileSystemInfo的实例?
FileSystemInfo是抽象类,不能通过构造函数生成一个实例,那有没有其他的方法呢?
DirectoryInfo.GetFileSystemInfos方法到是可以生成,但它生成的是指定路径下所有文件或文件夹的FileSystemInfo,
我想通过一个string生成一个FileSystemInfo的实例
请问怎么才能生成呢?

我这样做有一个目的,就是我可以不用判断string是文件还是文件夹,就可以判断它是否存在 --------------------编程问答-------------------- //但它生成的是指定路径下所有文件或文件夹的FileSystemInfo
//不用判断string是文件还是文件夹,就可以判断它是否存在

想法不妥,


        if(File.Exists(string) || Directory.Exists(string)){
            //do sth
        }

--------------------编程问答-------------------- 那么这样不就ok了?
using System.IO;

string vFileName = @"c:\temp";
if (File.Exists(vFileName) || Directory.Exists(vFileName))
{
    MessageBox.Show("路径“" + vFileName + "”存在");
}
--------------------编程问答-------------------- if(File.Exists(string) || Directory.Exists(string))
我就是觉得这样太麻烦了,才要用FileSystemInfo的
如果获得了它的实例fsi,直接fsi.Exists()就行了

抽象类不能通过构造函数生成实例,但并不代表不能用其他方法,比如DirectoryInfo.GetFileSystemInfos就可以
只不过它生成的是指定路径下所有文件或文件夹的FileSystemInfo,不符合这里的要求

我想知道有其他方法么? --------------------编程问答-------------------- 写个工厂方法


public static FileSystemInfo GetFileSystemInfo(string path)
{
    // 这里判断
    if (File.Exists(path))
        return new FileInfo(path);
    else if (Directory.Exists(path))
        return new DirectoryInfo(path);
    else
        throw new SomeException();

}
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,