C++ File 类学习总结

对于文件操作,以前我主要接触的是Linux下的一套,而到了C++学习了一下,也发现了一些异同点

首先FILE 类需要头文件#include <stdio.h>

对于打开文件操作,Linux下使用的是fopen函数,而在VS2010使用这个函数便会报警告

error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:program files (x86)microsoft visual studio 12.0vcincludestdio.h(211)

VS自己就建议你去使用fopen_s

erron_t ret = fopen_s(&FILE*,"FILENAME","打开方式");

打开成功返回0,失败返回非零值。

值得一提的是:

文件目录在VS下需要用\这点不等同于Linux下的来区分文件级别

有个小点容易遗忘那就是,文件打开后,文件指针的位置与打开方式是有关的,具体关系如下:

/***************************/

文件打开方式                 文件指针位置

r(读文件)                       文件头

w(写文件)                      文件头

a(a+)追加内容                文件尾

/***************************/

在用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个 

求文件长度的话,可以通过rewind()函数将文件指针偏移到文件头,再通过fseek(FILE*, 0L, SEEK_END);

读写文件的方式

有fread fwrite fputs fgets等函数,通过这些与feof的搭配我们可以实现读写的详细操作,具体见函数原型。

在我们操作完后记得关闭文件句柄fclose(FILE*);

原文地址:https://www.cnblogs.com/coderYi-Home/p/4972168.html