最近遇到个用C语言进行大文件处理的问题,以前没做过,希望各路高手给点方法。 5
要求:现在有一个2G大小的文件(*.txt),里面的内容是,每行只有一个单位的名称,现在要求读取最后的一千行的单位名称。(读取时要注意效率)问题:1,用C语言如何读取大文...
要求:现在有一个2G大小的文件(*.txt),里面的内容是,每行只有一个单位的名称,现在要求读取最后的一千行的单位名称。(读取时要注意效率)
问题:1,用C语言如何读取大文件?(要用内存映射及64位的API吗?)
2,如何统计文件里的行数?
3,如何读取文件中一行的数据?(fgets() api?)
暂时想到的就是这些问题,请各路高手给点方法和C语言代码,不尽感谢!
给分 展开
问题:1,用C语言如何读取大文件?(要用内存映射及64位的API吗?)
2,如何统计文件里的行数?
3,如何读取文件中一行的数据?(fgets() api?)
暂时想到的就是这些问题,请各路高手给点方法和C语言代码,不尽感谢!
给分 展开
1个回答
展开全部
问题:1,用C语言如何读取大文件?(要用内存映射及64位的API吗?)
答:分批处理,和普通文件一样。就是多循环几次。
2,如何统计文件里的行数?
答:统计文件中的换行字符个数。分批处理,计算。同时存储倒数第1000个回车符的文件指针位置。
3,如何读取文件中一行的数据?(fgets() api?)
答:识别换行字符。
问:读取最后的一千行的单位名称。
答:为了效率,打开文件后,就定位到倒数第1000个回车符的文件指针位置,进行读取。以换行符为分割来提取。
答:分批处理,和普通文件一样。就是多循环几次。
2,如何统计文件里的行数?
答:统计文件中的换行字符个数。分批处理,计算。同时存储倒数第1000个回车符的文件指针位置。
3,如何读取文件中一行的数据?(fgets() api?)
答:识别换行字符。
问:读取最后的一千行的单位名称。
答:为了效率,打开文件后,就定位到倒数第1000个回车符的文件指针位置,进行读取。以换行符为分割来提取。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询