C# 使用“访问目录/文件夹”;“没有名字”;(空白)在C中#

C# 使用“访问目录/文件夹”;“没有名字”;(空白)在C中#,c#,filepath,C#,Filepath,如何访问C#中“无名称”(空白)的目录/文件夹。 我试过了 string currentDir = "G:\\"; string targetDir = currentDir + "\\" + " " + "\\"; now targetDir === "G:\\ \\"; 但不是,当我使用targetDir获取“G:\\”中的文件列表时,它只显示“G:\”中的文件,而不是“G:\\” 谢谢 不支持以文件名或目录名结尾的“”空格字符,也不支持将其他单词作为名称 不要以空格或句点结束文件或目录名

如何访问C#中“无名称”(空白)的目录/文件夹。 我试过了

string currentDir = "G:\\";
string targetDir = currentDir + "\\" + " " + "\\";
now targetDir === "G:\\ \\";
但不是,当我使用targetDir获取“G:\\”中的文件列表时,它只显示“G:\”中的文件,而不是“G:\\”

谢谢

不支持以文件名或目录名结尾的“”空格字符,也不支持将其他单词作为名称

不要以空格或句点结束文件或目录名。尽管底层文件系统可能支持此类名称,但Windows shell和用户界面不支持。但是,可以将句点指定为名称的第一个字符。例如,“.temp”


可能字符实际上不是空白。例如,如果我通过按住alt键并键入ascii代码00160来重命名文件夹,则会在我的计算机上产生一个空白文件夹名称。

这是一个棘手的问题,我唯一能够模拟这一点的方法是使用alt+0160创建一个空白文件夹(这实际上被称为不间断空格,在html代码中,它是
 ;

对于这个字符,您可以利用Studio.Net .WebPosiy在以下空白空间文件夹中获取文件。HtmlDecode:

它得到了空白文件夹中的文件。


看看它是否适合你,如果不适合,那么你的角色是另一个奇怪的角色,你必须在继续之前弄清楚它到底是什么。

你可以通过
FileInfo
获得当前路径中所有文件夹的列表,并在检索到的数组上运行循环,搜索名称中包含1个字符且不是普通字符的文件夹。是的,它不会动态工作,因为在某些电脑上,特定的字符被认为是普通的,而在另一台电脑上则不是,但这就是我的想法,如果脚本是供您个人使用的,我认为没有理由不使用此解决方法:)

创建文件夹的不是我,这是一种病毒,它创建了flash,并将flash上的所有文件移动到该文件夹并隐藏它。现在我要做的就是将文件夹中的所有文件移回flash的根目录。仅供参考,我现在手动执行此操作,但我想自动执行此操作,因为有很多人向我提出此问题,我必须一次又一次地执行此操作。@NaGaa这解释了很多,Windows通常不允许您创建这样的文件夹。真的,我不知道这一点,那么,有没有办法知道它是什么角色,最重要的是,有没有一种方法可以让我用C#that导航到它is@NaGaaJaBesa尝试查看文件的Unicode代码:var lst=Directory.GetDirectories(@“G:\”,“?”)。选择(p=>Path.GetFileName(p)+“|”+((int)Path.GetFileName(p)[0])。ToString(“X4”))。ToArray()这看起来很有希望,我试过之后会给你回电话的。非常感谢你们的工作。也要感谢其他人!!不间断空格字符也可以通过将字符代码转换为如下所示的字符来实现:
(char)160
-然而,键似乎是尾随的反斜杠。没有它,我只得到父目录的文件。
testDir1 = currentDir + "\\" + System.Net.WebUtility.HtmlDecode(@" ") + "\\";
testDir1 = currentDir + "\\" + System.Net.WebUtility.HtmlDecode(@" ") + "\\";