该文件正在被另一个进程使用,我必须关闭它吗?如何?

2024-05-31

我正在使用一个文本文件来保存一些数据以供以后使用。所以我所做的就是检查文件是否存在,如果不存在,我会在需要时创建一个新文件。这给了我错误,说我的文件仍在被不同的进程使用,但我不确定为什么会这样。

我就是这样做的。在这里,我正在检查程序运行时启动的文件是否存在:

    private void CreateLastOpenFile()
    {
        if (!Directory.Exists(directory))
        {
            Directory.CreateDirectory(directory);
        }

        if (!File.Exists(file))
        {
            File.Create(file);
        }
    }

现在,我在检查或创建新文件时向其中添加一些数据(我在程序中的两个位置都有此数据):

CreateLastOpenFile();
File.WriteAllText(file, data);

这里可能出了什么问题?我已经从网上阅读了一些示例,但没有看到任何有关关闭任何文件的信息。


尝试这个。这将在文件创建期间关闭打开的流

 if (!File.Exists(file))
        {
         FileStream str = File.Create(file);
         str.Close();
        }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

该文件正在被另一个进程使用,我必须关闭它吗?如何? 的相关文章

随机推荐

  • 如何将一个“模型”映射到两个字段?

    我有一个具有 高度 属性的模型 我希望允许用户将其编辑为两个单独的字段 英尺 和 英寸 但让它们映射到以英寸为单位测量的单个属性 高度 表格看起来像这样 在这些字段和单个 高度 属性之间创建双向绑定的最佳方法是什么 HTML
  • 使用环境变量在 redis.conf 中设置动态路径

    我有一个环境变量MY HOME其中有一个目录的路径 home abc 现在 我有一个redis conf文件 我需要像这样设置这个路径 redis conf pidfile MY HOME local var pids redis pid
  • 在 Erlang 中实现图灵机

    我有一个小项目 与实现图灵机非常相似 我遇到的基本问题是保存当前配置 例如头部的位置和更多信息 对我来说特别重要的是保留头部位置以使其向前或向后移动 Erlang 解决这个问题的方法是什么 我是 Erlang 新手 但据我探索 OTP ge
  • 如何覆盖 suhosin 最大值?

    suhosin 正在过滤一个重要的 GET 参数 当以下方法不起作用时 如何覆盖 suhosin public html php ini suhosin suhosin get max value length 2048 将 suhosin
  • React-Redux:操作必须是普通对象。使用自定义中间件进行异步操作

    未处理的拒绝 错误 操作必须是普通对象 使用自定义中间件进行异步操作 我想为每个帖子添加评论 因此 当运行获取帖子时 我想为所有帖子调用获取评论 API export function bindComments postId return
  • 在unix、bash中合并csv文件

    我有一些 csv 文件 其格式如下 测试1 csv field port1 a1 0 2 a2 0 3 a3 0 6 测试2 csv field port2 b1 0 5 b2 0 6 b3 0 7 b4 0 1 b5 0 5 测试3 cs
  • Java swing - 单击时执行操作

    我想我已经把自己逼到了一个角落里 我正在尝试使用 java swing 来做一些事情 单击 下一步 按钮时 从文件中加载新行 通过行索引号 然后如果文件中该行的日期尚未到达 则使 下一个 按钮变灰 我的问题是 当我有以下代码时 Scanne
  • sails.js 水线嵌套填充查询

    我有一个返回对象的多个结果的查找查询 该对象包含一个包含另一个模型的模型 问题是水线不支持嵌套填充 因此它填充第一个模型 但不填充它的内部模型 我见过的所有示例都是针对 findOne 查询的 我正在寻找一种方法来解决返回多个结果的查找查询
  • 错误:Google Play 服务存在未知问题

    这在过去一周突然出现 我尝试通过 VCS 恢复更改 但错误似乎仍然存在 我也不记得对控制台进行过任何更改 错误信息 Google Play 服务的未知问题 这会在登录似乎完成后出现 我正在使用 BaseGameActivity 并遵循教程
  • 如何使用 HHVM proxygen 重写规则忽略任何文件?

    我创建一个这样的文件example ini hhvm server type proxygen hhvm server default document index php hhvm virtual host default rewrite
  • 使用 JOGL 编译文件时出现问题

    我正在尝试使用 JOGL 通过命令行编译一个简单的程序 这实际上不起作用 我尝试按照官方文档的建议引用 jogl all jar gluegen rt jar nativewindow all jar 和 newt all jar 但编译器
  • 错误:“Int”无法转换为“@lvalue Float”

    给定以下函数 func greatestCommonDenominator first Int second Int gt Int return second 0 first greatestCommonDenominator second
  • 虚拟类继承对象大小问题

    在这里 在这段代码中 ob1的大小是16 这很好 因为虚拟指针 但我不明白为什么ob2的大小是24 include
  • RxJava 棘手的 startWith(Observable)

    以下代码仅在 observable2 完成后才从 observable1 发出项目 observable1 startWith observable2 subscribe 我需要实现另一种行为 observable1 gt 0 1 2 3
  • C++11:数组的编译时计算

    假设我有一些 constexpr 函数 f constexpr int f int x 我在编译时知道一些 const int N Either define N or const int N 根据您的回答的需要 我想要一个 int 数组
  • 从 C++ 调用 Python 脚本并使用其输出

    我想从 C 调用 python 脚本 并希望使用该脚本生成的输出 csv 文件返回 C 我在 main 中尝试过 std string filename home abc xyz script py std string command p
  • 建立了无需 SSL 即可进行安全注册和身份验证的 javascript 解决方案

    有没有无需 SSL 即可实现安全用户注册和身份验证的解决方案 安全 我的意思是免受被动窃听 不是来自中间人 http en wikipedia org wiki Man in the middle attack 我知道只有带有签名证书的 S
  • 如何在python中获取硬盘驱动器的序列号

    我尝试使用wmi来获取硬盘的序列号 我所做的是这样的 启动ipython并使用以下方式获取序列号 import wmi c wmi WMI for x in c Win32 PhysicalMedia print x 结果是这样的 inst
  • 避免指定包含模板化函数指针的冗余模板参数

    假设我们有这样的代码 template
  • 该文件正在被另一个进程使用,我必须关闭它吗?如何?

    我正在使用一个文本文件来保存一些数据以供以后使用 所以我所做的就是检查文件是否存在 如果不存在 我会在需要时创建一个新文件 这给了我错误 说我的文件仍在被不同的进程使用 但我不确定为什么会这样 我就是这样做的 在这里 我正在检查程序运行时启