码迷,mamicode.com
首页 > 编程语言 > 详细

C++文件操作

时间:2014-12-10 21:16:44      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   os   sp   strong   on   

今天Mayuyu来学习C++文件操作,在C++中关于文件操作的方法主要有如下几个

 

(1)fopen()

 

   此函数的原型为 bubuko.com,布布扣

 

   如果文件打开失败会返回NULL,如果失败一般会做判断处理。参数说明如下

 

   path  代表文件名

   mode  代表数据流形态,一般有如下一些模式

 

         r    以只读的方式打开文件

         r+   以可读写方式打开文件

         rb+  以读写方式打开一个二进制文件

         w    打开只写文件,如果文件存在,则清空文件并写入新数据,如果不存在则建立新文件

         w+   打开可读写文件,如果文件存在,则清空文件并写入新数据,如果不存在则建立新文件

         a    以附加的方式打开只写文件,如果文件存在,写入的数据会被加到文件尾,否则建立新文件

         a+   以附加的方式打开可读写的文件,如果文件存在,写入的数据会被加到文件尾,否则建立新文件

         wb   只写打开或者建立一个新的二进制文件,只允许写数据

         wb+  读写打开或者建立一个新的二进制文件,允许读和写数据

         ab+  读写打开一个二进制文件,允许读或者在文件末尾追加数据

       

 

(2)fseek()

 

    函数原型为 bubuko.com,布布扣

 

    作用:把stream的文件读写位置指针移到指定的位置。

 

    参数说明:

 

    stream     fopen()得到的文件指针

    offset     表示偏移量,正数表示正向偏移,负数表示负向偏移

    fromwhere  表示从文件的哪里开始偏移,可能取值为SEEK_SETSEEK_CURSEEK_EN

               其中SEEK_SETSEEK_CURSEEK_EN值分别是012,也可以用它们来代替。

 

 

(3)ftell()

 

    函数原型为 bubuko.com,布布扣

 

    作用:得到文件位置指针当前位置相对于文件首的偏移字节数。参数为文件的指针。

 

 

(4)fread()和fwrite()

 

    函数原型如下

 

    bubuko.com,布布扣

 

    作用:分别用于读取和写文件。参数说明(主要说明中间两个参数)

   

    size   表示要读写的字节数

    count  要进行读写多少个size字节的数据项

 

 

代码:

#include <string.h>
#include <stdio.h>

#define LEN  15
#define SIZE 1024

char in_file[LEN];
char ou_file[LEN];
char buff[SIZE];

int main(int argc, char **argv)
{
	strcpy(in_file, argv[1]);
	strcpy(ou_file, argv[2]);

	FILE *fd = fopen(in_file, "r");
	if(!fd)
	{
		printf("open input file error!\n");
		return -1;
	}

	fseek(fd, 0, SEEK_END);
	long len = ftell(fd);
	fseek(fd, 0, SEEK_SET);
	fread(buff, len, 1, fd);
	fclose(fd);

    printf("Input String is : %s\n", buff);
	printf("The size of the input file is : %ld\n", len);

    FILE *fp = fopen(ou_file, "w");
	if(!fp)
	{
		printf("open output file error!\n");
		return -1;
	}

	fwrite(buff, len, 1, fp);
	fclose(fp);

	return 0;
}

 

 

 

 

C++文件操作

标签:style   blog   http   io   ar   os   sp   strong   on   

原文地址:http://blog.csdn.net/achelloworld/article/details/41850821

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!