我希望asp应用程序创建一个只能访问应用程序运行的帐户的文件夹(即asp帐号?)
我实际上想要使用这个,但我不知道如何动态使用"Computer\CurrentAccount".
我想获得当前的工作帐户.
谢谢.
在 .NET 中,我正在运行代码Directory.Delete(tempdir, true);以永久删除目录和所有包含的文件。然而,这种删除方法只是将文件发送到回收站,而不是永久删除它们。有没有办法强制Directory.Delete永久删除目录和包含的文件,而不仅仅是移动到回收站?我找不到任何其他方法重载来执行此操作。
编辑:正如尼尔指出的那样,这不是实际发生的事情。Directory.Delete确实是永久删除目录和包含的文件,而不是将它们发送到回收站。抱歉有任何混淆
所以,我试图创建一个以下目录:
d:\temp\ak\ty\nul
Path 是在循环中构建的,从:d:\temp等开始,一路创建不存在的目录,所以它首先创建:
d:\temp\ak
然后:
d:\temp\ak\ty
然后......然后到了最后一位nul它抛出了这个异常:
那么,发生了什么事 - 它从哪里获取\.\nul?
代码:
string z_base_path = @"d:\temp\ak\ty";
string z_extra_path = "nul";
string z_full_path = System.IO.Path.Combine(z_base_path, z_extra_path);
System.IO.Directory.CreateDirectory(z_full_path);
Run Code Online (Sandbox Code Playgroud) 我遇到的问题是我的路径字符串通过检查Path.GetInvalidPathChars()但在尝试创建目录时失败.
static void Main(string[] args)
{
string str2 = @"C:\Temp\hjk&(*&ghj\config\";
foreach (var character in System.IO.Path.GetInvalidPathChars())
{
if (str2.IndexOf(character) > -1)
{
Console.WriteLine("String contains invalid path character '{0}'", character);
return;
}
}
Directory.CreateDirectory(str2); //<-- Throws exception saying Invalid character.
Console.WriteLine("Press any key..");
Console.ReadKey();
}
Run Code Online (Sandbox Code Playgroud)
知道可能是什么问题吗?
我正在处理一个批处理程序,该程序处理大量文件(超过5万个文件),并且该Directory.GetFiles方法面临着怪异的行为。
在此过程中,我将移动与以下搜索模式“ * .pdf”匹配的文件,并由于以下Directory.GetFiles方法而获得了这些文件:看到有时我移动了.pdfa文件,我感到非常惊讶。
因此,我检查了该文档,并明确指出,如果搜索模式包含带有3个字母的扩展名,则将返回以该扩展名开头的所有文件。
我已经用一个简单的程序进行了测试,它的行为不像文档中所述,仅在极少数情况下才如此。
使用此代码:
static void Main(string[] args) {
var directory = @"E:\Test\";
var files = Directory.GetFiles(directory, "*.pdf");
foreach(var file in files)
Console.WriteLine(file);
}
Run Code Online (Sandbox Code Playgroud)
我有这个结果:
您对此行为有任何解释吗?