草庐IT

open-files-limit

全部标签

C# File.Replace 防止崩溃

File.Replace是否执行原子/事务操作,以便在发生崩溃或电源故障时目标文件永远不会丢失,也不会是部分文件(即原始文件或新文件)文件)?如果没有,是否有其他方法可以防止这种情况发生?注意:这将在装有Windows7或更高版本的NTFS驱动器上,我知道它支持事务。注意:我问的是关于保存在一个原子庄园中,而不是关心一个单独的进程也像thisquestion这样打开文件. 最佳答案 File.Replace在内部使用WinAPI函数ReplaceFile(当然是在Windows上)。但是,即使在该函数中,原子性也不是记录在案的行为,

c# - Open XML - 如何向 docx 文档添加水印

我正在尝试获取现有文档,如果标题不存在,请创建一个,然后在标题中添加一个水印,上面对角地写着“DRAFT”。我按照一个例子发布了here如果标题已经存在,我已经将代码添加到添加水印的位置。当前的问题是当我添加一个新的标题,添加对文档的引用,然后将水印添加到标题时,文档损坏并且无法再在Word2010中打开。为了测试,我一直在执行以下操作:从word本身创建一个新的word文档,在页面的主要部分中包含文本“TestDoc”。将文件另存为“TestDoc.docx”并关闭文件。然后我从VisualStudio运行应用程序。下面的代码总是会使其损坏。如果我向文件中添加一个没有文本的标题,然后

c# - 区分大小写 Directory.Exists/File.Exists

有没有办法让Directory.Exists/File.Existssince区分大小写Directory.Exists(folderPath)和Directory.Exists(folderPath.ToLower())都返回true?大多数时候这无关紧要,但我使用的宏似乎在路径与大小写不匹配100%时不起作用。 最佳答案 由于Directory.Exists使用FindFirstFile不区分大小写,不。但是你可以PInvokeFindFirstFileExadditionalFlags参数设置为FIND_FIRST_EX_CA

c# - 来自 Visual Studio 2013 RC 的 "Cannot find or open the PDB file"

第一次使用C#,但我有Java经验。我写了一个HelloWorld程序来启动自己,但是我在编译时遇到了这个找不到或打开PDB文件错误。'ConsoleApplication4.vshost.exe'(CLRv2.0.50727:ConsoleApplication4.vshost.exe):Loaded'C:\Windows\assembly\GAC_64\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'.CannotfindoropenthePDBfile.'ConsoleApplication4.vshost.exe'(CLRv2.0

c# - 错误 : ExecuteReader requires an open and available Connection. 连接的当前状态为打开

我有下面带有DataHelperClass的mvc4网站来执行查询。我的问题有时是,网站以异常为标题。我使用block来处理SqlCommand和SqlDataAdapter但没有成功。请帮助我,对不起我的英语。try{if(_conn.State==ConnectionState.Closed)_conn.Open();using(SqlCommandsqlCommand=newSqlCommand(query,_conn)){sqlCommand.CommandType=CommandType.StoredProcedure;if(parameters!=null)sqlComma

c# - "The breakpoint will not currently be hit. A copy of file was found in dll file, but the current source code is different"

我不断收到此错误消息,提示存在.cs文件的副本,因此不会命中断点。我尝试过清理解决方案、重建、删除obj和bin文件夹中的.pdb文件、关闭VS并重新启动它、重新启动整个机器(这是Windows!有时最复杂、无法解释的问题会像这样解决:\)知道我还能尝试什么吗?这是VS2015上的.net项目 最佳答案 我发现了问题,原来IIS配置为使用我备份文件夹中项目的不同副本。这听起来很傻,但如果有人有类似的问题,我会保留这个问题。 关于c#-"Thebreakpointwillnotcurren

c# - .net framework 4.0 的 File.ReadLines(..) 方法中的错误

这段代码:IEnumerablelines=File.ReadLines("filepath");foreach(varlineinlines){Console.WriteLine(line);}foreach(varlineinlines){Console.WriteLine(line);}如果执行第二个foreach,则抛出ObjectDisposedException:{"CannotreadfromaclosedTextReader."}。从File.ReadLines(..)返回的迭代器对象似乎不能被枚举多次。您必须通过调用File.ReadLines(..)获取新的迭代器对

c# - 限制 File.Copy 的速度

我们在C#中使用一个简单的File.Copy将我们的数据库备份移动到额外的位置。但是在某些服务器上,这会导致SQL服务器几乎停止工作。这些服务器的内存非常有限,因此它们经常将数据分页到硬盘。虽然我们应该购买更多内存,但这在很长一段时间内都不会发生:-/所以我想知道我是否可以以某种方式限制File.Copy操作的速度?(从而给SQL服务器一些访问硬盘的空间)我可以使用具有两个流的“老派”方法,通过缓冲区读取和写入,并且在读取之间只休眠5毫秒左右。但如果有这样的解决方案,我真的更喜欢一个更简洁的解决方案。 最佳答案 CopyFileEx

c# - File.AppendAllText 如果不存在则创建子目录?

如果我有一个路径C:\Test\Test1\a.txt而Test1不存在,我如何确保在附加到a.txt之前创建它? 最佳答案 怎么样:Directory.CreateDirectory(Path.GetDirectoryName(filename)); 关于c#-File.AppendAllText如果不存在则创建子目录?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/54048

c# - 如何检查 System.IO.File.Delete 是否成功删除文件

使用system.io.file类删除文件后:System.IO.File.Delete(openedPdfs.path);如果文件被成功删除,我需要运行一些代码。只要该方法不返回任何值,我就会在delete方法之后检查文件是否存在。如果它仍然存在,我认为操作失败。问题是,删除方法工作正常,但要删除文件需要几秒钟。Exist函数返回true,因为当时它正在检查文件是否存在。我如何确定System.IO.File.Delete(openedPdfs.path);是否成功完成?代码:FileInfofile=newFileInfo(openedPdfs.path);System.IO.Fi