【发布时间】:2010-07-28 14:48:52
【问题描述】:
我正在制作一个命令行实用程序。我需要在程序中传递一些文件路径。
现在我只使用string。但我想知道 .net 库是否有一个很酷的类来传递文件路径。
【问题讨论】:
我正在制作一个命令行实用程序。我需要在程序中传递一些文件路径。
现在我只使用string。但我想知道 .net 库是否有一个很酷的类来传递文件路径。
【问题讨论】:
嗯,有FileInfo - 差不多就是你得到的。
【讨论】:
字符串是存储路径的最佳方式。
如果您需要修改或使用路径,则应使用 System.IO.Path。
如果您想要更健壮的东西,并且可以实际与文件/目录交互,您还可以查看 FileInfo 和 DirectoryInfo。但请记住,如果您只需要存储路径,这两种方法都非常繁重。
【讨论】:
基类库将路径表示为字符串,但也有开源替代方案。 NDepend.Helpers.FileDirectoryPath 是一个用于以强类型方式操作路径的开源库。
【讨论】:
DirectoryInfo 对象可以保存文件路径和有关目录的任何相关信息,FileInfo 也可以保存单个文件的信息和路径。
【讨论】:
贾斯汀尼斯纳的回答非常好......但只是补充一点: System.Io.Path 也有一些静态方法可以提供帮助,因此我们不必担心额外的“斜杠”和跨平台差异(例如反斜杠/正斜杠)。
例如:您可以使用 .Join(或 .Combine):
var readFile = new StreamReader(Path.Join(filePath, inputFileName));
【讨论】: