【发布时间】:2009-07-06 15:17:14
【问题描述】:
我有以下代码:
public static void Serialize()
{
List<string> dirs = FileHelper.GetFilesRecursive(fileDirectoryPath);
List<string> dirFiles = new List<string>();
foreach (string p in dirs)
{
string path = p;
string lastAccessTime = File.GetLastAccessTime(path).ToString();
bool DirFile = File.Exists(path);
FileInfo fInf = new FileInfo(path);
long lengthInk = fInf.Length / 1024;
DateTime lastWriteTime = File.GetLastWriteTime(p);
dirFiles.Add(p + "|" + lastAccessTime.ToString() + "|" + DirFile.ToString() + "|" + lastWriteTime.ToString() + "|" + lengthInk.ToString() + " kb");
}
我不断遇到以下行的 PathTooLongException 错误:
string lastAccessTime = File.GetLastAccessTime(path).ToString();
应用程序钻入驱动器并查找驱动器中的所有文件/文件夹。我无法更改此路径,但由于它超过 260 个字符...如何解决此问题?
【问题讨论】:
-
我自己和其他人的回答 here 建议了一些可用于处理长路径的包装库。