tcl - 在TCL中,当文件处于连续写操作时,是否可以删除文件的前几行或前n行
问题描述
以下是有关如何将数据写入文件的代码。
set fid [open "file.txt" w]
fconfigure $fid -buffering line
我想知道是否有任何方法可以在文件处于写入模式时在不关闭 fileID 即 fid 的情况下删除文件的前 n 行。
解决方案
由于文件的处理方式,这是不可能的。它也与 Tcl/Tk 语言无关,任何编程语言都不可能。
为了解决这个问题,使用了一些变通方法。
例如,1)读取内存中的文件;2) 从头开始删除不需要的数据 2) 将数据写回文件。
或者:1)打开原始文件进行读取 2)打开临时文件进行写入 3)从原始文件中跳过不需要的数据 4)从原始文件中读取需要的数据并将其写入临时文件 5)关闭原始文件和临时文件文件 6) 删除原文件并重命名临时文件。
推荐阅读
- spring-boot - 无法调用“”,因为此服务层在 Cucumber 测试中为空
- kubernetes - 获取属于自动扩展部署的所有动态创建的 pod
- reactjs - 按下切换按钮时,React Native 开关仅工作一次
- typescript - 定义构造函数
要求具体的论据 - python - 如何使用 Python 可视化锦标赛括号?
- python - 将日期时间列表转换为每小时分布数据框
- android-studio - 如何在 Android Studio 中保存状态单选按钮
- javascript - 使用 lodash 压缩两个对象,其中一个对象的键和另一个对象的值
- openapi - 将 mTLS Cloudflare 添加到 OpenAPI 3.0.0 yaml 文件
- r - 创建每月虚拟变量