yxylxj 发表于 2015-7-23 09:11:27

如何实现:用C 语言实现对一个txt文件的任意指定行读写

本帖最后由 yxylxj 于 2015-7-23 09:12 编辑

如何实现:用C 语言实现对一个txt文件的 任意指定行进行读写
codeblocks+GNU GCC

lcofjp 发表于 2015-7-23 10:17:02

如果每行长度都是一样的,那好改,如果长度不一致,那就费劲了。

lanqilove 发表于 2015-7-23 10:26:32

如果文件不是很大的话,使用链表,txt中每一行做一个节点,节点中数据使用堆申请的内存,把整个文件读入内存。判断用户要编辑某一行的时候,检查节点数据内存空间不够的话申请一块更大的。最后保存的时候按顺序将链表的节点写入文件。

落叶随风 发表于 2015-7-23 10:34:37

用C/C++标准库函数

tenx 发表于 2015-7-23 12:01:01

要写的行长度不够的话,从写入处开始都要重写

yxylxj 发表于 2015-7-23 15:03:01

落叶随风 发表于 2015-7-23 10:34
用C/C++标准库函数

readline ?

落叶随风 发表于 2015-7-23 15:17:30

yxylxj 发表于 2015-7-23 15:03
readline ?

我用过ifstream中的getline,但这个是需要提供读取的长度的。

你可以试下string中的getline

http://www.cnblogs.com/klzwj1988/archive/2010/07/31/1789268.html

你需要读取任意指定行,那就必须自己移动指针。

yxylxj 发表于 2015-7-23 15:22:38

落叶随风 发表于 2015-7-23 15:17
我用过ifstream中的getline,但这个是需要提供读取的长度的。

你可以试下string中的getline


这是 C ++ 哦?

brahen 发表于 2015-7-23 15:34:36

yxylxj 发表于 2015-7-23 15:03
readline ?

自己判断一下换行符不就完了么。
你以为封装getline还是什么readline真的知道行的位置在哪啊,都是自己遍历的。
页: [1]
查看完整版本: 如何实现:用C 语言实现对一个txt文件的任意指定行读写