LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 613|回复: 8

如何读入不定长的文本行

[复制链接]
发表于 2004-5-29 09:14:17 | 显示全部楼层 |阅读模式
我要用C(not C++)写一个文本比较的模块,需要一行一行地读入文件,但是每行的长度是不定的,可能>1M,所以用定长的字符数组不太合适,应该如何处理?
发表于 2004-5-29 09:23:51 | 显示全部楼层
有两个办法:
1.用一个大缓冲区,这个缓冲区的大小要比文件中的任何一行都要大。
2.没有必要一次读完吧,可以一次读入一部分,比较完后再读入剩余的部分。
 楼主| 发表于 2004-5-29 10:00:00 | 显示全部楼层
主要问题是我要去除行前面与后面的空格,一部分一部分读就比较麻烦了……
发表于 2004-5-29 10:04:01 | 显示全部楼层
可以读进来后,自己处理呀。
发表于 2004-5-29 14:31:44 | 显示全部楼层
man 2 getline
发表于 2004-5-29 19:01:35 | 显示全部楼层
大于1m怕什么,分开读不好
 楼主| 发表于 2004-5-29 19:14:50 | 显示全部楼层
最初由 trinity 发表
man 2 getline

谢谢
发表于 2004-5-31 13:10:06 | 显示全部楼层
如果从效率上讲,一次读入的方法最好,另,什么样的文本一行会大于一m啊,一定不是人写的,呵呵,也可以使用流
发表于 2004-6-1 16:12:33 | 显示全部楼层
isblank  函数判断空格跳过
一次读入
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表