【发布时间】:2017-11-06 00:07:27
【问题描述】:
其实我只是想统计一个文件夹中的数据。 不幸的是,无法正确识别路径。
string tets = @"C:\Users\Tom\Downloads\AppBilder";
[...]
StorageFolder folder = await folderPicker.PickSingleFolderAsync();
[...]
Ordnerquelle = folder.Path;
int directoryCount = Directory.GetDirectories(tets, " * ", SearchOption.AllDirectories).Length;
int fileCount = Directory.GetFiles(tets, "*", SearchOption.AllDirectories).Length;
count = directoryCount + fileCount;
调试器显示如下:
- tets: "C:\\Users\\Tom\\Downloads\\AppBilder"
- Ordnerquelle "C:\\Users\\Tom\\Downloads\\AppBilder"
- 计数:0
文件夹不为空! 我错过了什么?
【问题讨论】:
-
请参考msdn.microsoft.com/en-us/library/c1sez4sc(v=vs.110).aspx这个方法只需要传递一个参数。
-
嗯,fileCount 应该没问题,但 GetDirectories 应该有“*”作为 searchPattern,而不是“*”。
-
调试器将使用双反斜杠显示转义值。如果单击放大镜图标,您将看到实际值仅包含每个路径分隔符的一个反斜杠。
-
你真的运行过
count = directoryCount + fileCount吗?当调试器程序指示器指向一行代码时,表示调试器尚未运行该行代码。 -
" * "表示“它以空格开头,有 0 个字符,然后以空格结尾。因此,除非您有符合此条件的目录,否则不会返回任何目录。
标签: c# path uwp escaping directory