c - 允许用户修改从终端文件中提取的字符串并保存回文件
问题描述
我想创建一个命令行注释编辑器(在linux平台上用c编写)。
注释是一个包含作者、日期、一些文本的结构
要求很简单:
程序可以读取和打印文件中的所有笔记(最终按 id、日期、作者过滤它们)程序将允许用户修改或创建新笔记并将它们附加到文件的顶部。
我不知道如何允许更新。重点是我想通过 id 提取例如注释,并将其放入缓冲区中。将缓冲区写入终端并让用户修改它。当用户完成注释后,他可以确认并且注释将再次保存到文件中。
我怎样才能做到这一点?
我也会接受将临时注释发送给像 nano 这样的编辑器,但我想要的是程序只提取该注释,而不是打开所有文件。
是否有任何库可以做到这一点或低级系统输入输出接口?
解决方案
正如@Barmar 建议的那样,我使用外部编辑器编辑文件,并通过system
系统调用启动它。我选择使用tmpfile()
函数创建一个临时文件来写入或更新笔记,然后将字节流复制到原始文件中
推荐阅读
- sql - 如何在postgresql中获得没有不必要区域的大小
- python - Python multiprocessing module freeze_support() line can obmitted error Windows
- tensorflow - 我可以在 Keras 中循环定义模型吗?
- angular - 无法通过 POSTMAN 访问 Angular 路由
- python - 双向 LSTM 模型尚未建立错误
- java - 具有多个资源和 else 语句的 try-with-resources JDBC
- sql - 如何在加入后对多个列进行区分,然后为每个组排序并选择最新的?
- javascript - Leaflet.js 循环点击事件处理程序
- c - Of the given sites, incorrect result being returned
- c++ - 如何结束用户输入数组