use*_*755 17 .net string directory
在我的新代码中,我没有使用字符串来传递目录路径或文件名.相反,我使用DirectoryInfo和FileInfo,因为它们似乎封装了大量信息.
我已经看到很多代码使用字符串来传递目录信息然后他们在长难以理解的语句中"分裂","中"和"instr",直到他们获得他们正在寻找的目录的一部分.
将路径作为字符串传递是否有充分的理由?
Ree*_*sey 11
一般来说,我认为保留FileInfo/DirectoryInfo中的信息更好.这些类中有许多有用的功能,并且涉及很多安全性,因为检查文件是否存在,查看最初指定的文件等等要容易得多.
我将(可能)传递路径而不是使用FileInfo和DirectoryInfo的唯一地方,如果路径将通过AppDomains或进程之间传递等.
FileInfo和DirectoryInfo在AppDomain边界上都可以正常工作(因为它们是Serializable),但是在这种情况下它们有更多的开销.如果事情反复发生,它可能会产生影响.
在这种情况下,我会坚持使用FileInfo和DirectoryInfo,除非我发现在我的分析过程中存在明显的问题,并且我试图减少序列化数据的数量.如果我没有遇到性能问题,我会坚持使用这些类,因为它们提供了很多安全性和功能.
如果您需要的只是路径,则DirectoryInfo和FileInfo非常重要.我会更关注"分裂,中间和内部"的垃圾.了解方法:
Path.GetFileName
Path.GetDirectoryName
Path.Combine
等...
这些来自System.IO.Path类,顺便说一句.