首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >File.WriteAllText和File.Copy问题

File.WriteAllText和File.Copy问题
EN

Stack Overflow用户
提问于 2010-02-05 00:49:31
回答 3查看 2.2K关注 0票数 5

我正在使用File.WriteAllText创建一个文件,并使用File.Copy方法将相同的文件复制到另一个目录。但由于某些原因,它不会在源目录中创建文件,但会将其复制到目标目录。

可能的问题是什么?请让我知道。

代码语言:javascript
复制
File.WriteAllText(sourceFilePath, Contents.ToString());
File.Copy(sourceFilePath, destFilePath);
EN

回答 3

Stack Overflow用户

发布于 2010-02-05 01:28:42

好吧,你知道文件确实被创建了,否则File.Copy()会抛出一个异常。而且File.Copy()不会像File.Move()那样删除源文件。

最简单的解释是,文件是在您不期望的文件夹中创建的。如果sourceFilePath不是绝对路径,这是很常见的。当您使用RestoreDirectory属性设置为false的OpenFileDialog时,通常会发生这种情况。例如。

通过始终使用绝对路径来避免这种情况。Environment.GetFolderPath()是您的朋友。

票数 7
EN

Stack Overflow用户

发布于 2010-02-05 01:09:25

根据你的例子,方法调用是并发的吗?

如果是这样,您可以调用File.WriteAllText两次来绕过这个问题,尽管我不知道为什么会发生这种情况。

您可以在复制之前执行File.Exists检查,或者可能尝试执行Thread.Sleep(100),然后查看是否存在磁盘I/O类型问题。

票数 0
EN

Stack Overflow用户

发布于 2010-02-05 04:21:27

您要写入哪个文件夹?这会不会是Vista/7文件夹虚拟化的问题?

如果你能向我们展示你正在使用的实际代码,那将是很有帮助的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2201467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档