当前位置: 首页 > 知识库问答 >
问题:

由于已打开,进程无法访问文件

仲孙小云
2023-03-14

运行在wince 5.0/.NET framework compact 2.0上的代码
总是会得到一个异常:

//read text
using (StreamReader sr = File.OpenText(fname))
{
  string line;
  while ((line = sr.ReadLine()) != null)
  {
    // append into stringbuilder
    sb.Append(line);
    sb.Append("\n");
  }
}
//write text, below code raise the exception. 
//if i comment it and re-run the code,exception disappear
using (StreamWriter sw = File.CreateText(fname))
{
  sw.Write(sb.ToString());
}

另外:我只想更新文件,读写。还有更好的办法吗?

共有1个答案

长孙燕七
2023-03-14

对不起,伙计们,问题出在我的代码里,我把你们弄糊涂了,因为我没有分享那个代码。
实际上是因为我在程序的一开始就写了这个

// f is the fileinfo which point to fname as well
string text = f.OpenText().ReadToEnd();

这创建了一个streamreader,没有分配给任何变量,但它在堆中。所以我忽略了。
感谢大家在这里帮忙。顺便说一句,把代码改成这个,然后问题消失了

using (StreamReader sr = f.OpenText())
{
   string text = sr.ReadToEnd();
}
 类似资料:
  • 我遇到了一个例外:进程无法访问该文件。 代码如下: 在我添加这些行之前,代码运行良好。这些主要用于测试xml文件是否没有结束标记(我通常会得到结束标记),然后添加标记。在我添加以下代码后,它开始给我这个异常。 这里可能出了什么问题? 编辑:我得到的错误 进程失败:系统。IO。IOException:进程无法访问文件“z:\TF\u B1BBA”。因为它正被另一个进程使用。at系统。IO__错误系统

  • 问题内容: 在XCode 6.3和XCode 7中使用快速代码运行项目时,出现以下错误: 由于您无权查看文件“ ***。app”,因此无法打开 我的应用程序不再启动。我检查了编译器设置是否正确。可执行名称和捆绑包名称也正确。 几次清理了项目,也删除了XCtest目标。 问题答案: 有时可能是由于文件中的错误损坏所致。尝试创建一个具有相同名称的新项目,然后用新的项目替换当前的项目。

  • 问题内容: 我只是重新启动了计算机,没有进行任何更改。突然我无法打开Eclipse。相反,我收到此错误消息: 而且我看到我所有的环境变量都被删除了。,,,等不工作。我现在该怎么办,该如何解决? 问题答案: 这是答案,对不起..但是您的解决方案不正确 paxdiablo 是否重写了该错误,或​​者您获得了某种从图像读取文本的软件(如果有)?

  • 启动Glassfish后,无法访问远程Glassfish站点。我使用的地址是123.123.12.12:14848(ip号已更改) root@debian:/opt/glassfish5/glassfish/bin#./asadmin start-domain等待domain1启动..........已成功启动域:domain1域位置:/opt/GlassFish5/GlassFish/domai

  • 问题内容: 在充气城堡的示例中,我找到了以下代码: 当我使用此代码编写p12时,我尝试使用openssl或钥匙串将其打开,并提示我输入密码。我用他们的密码 尝试打开P12,但是它不起作用。此外,当我按原样运行此主要功能时,将执行此行 为了正确地在p12上输入密码,他们的示例有问题吗?我基本上是想做相当于 如果有其他想法,也可以使用Bouncy Castle在Java中使用。 编辑 看NISTObj

  • 我保存了一个熊猫数据框作为CSV使用 但是当我读到它在使用 我收到一条错误消息说 UnicodeDecodeError:“utf-8”编解码器无法解码位置158处的字节0xbf:无效的开始字节 我已经尝试通过使用打开csv文件来强制读取时的编码为utf-8 真的卡住了,有人能帮忙吗? 非常感谢