关于C语言中文件操作的一些知识(小白刚体验)

这两天做一个C的课程设计,其中涉及到了挺多的文件处理,首先面临的问题是从文件中获取我需要的内容。最大的发现也在于这里


当我使用fgets()函数时,好玩的东西出现了,当前我的文件中的内容为

4-2=

我使用fgets()函数进行读取:

fgets( str , 6 , fp );

其中str为我定义的字符型数组,接下来我进行了一个尝试,本意是收集整个字符串大概需要多少,然而我有一次不小心写成了1,即:

fgets( str ,1 , fp  );

然后使用printf()语句输出str后发现为一个换行符,也就是说每个文件的开头都有一个换行符,这一点可能并没有什么用,但是感觉很好玩,所以分享一下。

不过之后我选择了fscanf()的方法来读取文件内容了,因为配合起fprintf()来使用更加的方便,快捷。


之后也是我所遇到的最难点,假设一个文件内容为

4+3=

1-2=

此时我算出了4+3的结果,想往后插入的时候,发现,插入的结果会顶替掉后面的字符,最终文件内容变成了 4+3=7-2=

当然最后经过问大神以及研究,知道了解决的办法,具体方法为:

1.直接重新构造整个字符串,然后再一次性写入文件当中

2.使用文件内存映射的方法,直接使用指正的方式读写文件中的内容


以上就是对于文件操作的一些收获,如果是希望获得文件操作具体的使用知识的可能作用不大,也有很多大神写了具体的,本文纯属经验分享。谢谢

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值