文件操作ofstream,open,close,ifstream,fin,按照行来读取数据, fstream,iosin iosout,fio.seekg(),文件写入和文件读写,文件拷贝和文件



1.ofstream,open,close
写入文件

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//通过ofstream的方式实现写入文件
open,close

void
main()

{

   
ofstream
fout; 
//ofstream输出文件

   
fout.open("E:\\1.txt");//打开文件

   
fout <<
"1234abcdef";//写入文件

   
fout.close();

}

通过这些代码向文件1.txt中输入文件

2.ifstream,fin
从文件中读取文件并打印输出到屏幕

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//通过ifstream流读取文件,并将文件写入str中

void
main()

{

   
ifstream
fin("E:\\1.txt");//创建读取文件的流

   
char
str[50] = { 0 };

   
fin >>
str;//读取

   
fin.close();

   
cout <<
str;

   
cin.get();

}

运行结果是,输出:1234abcdef

3.按照行来读取数据

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//按照行来读取

void
main()

{

   
//按照行来读取

   
ifstream
fin("E:\\1.txt");

   
//读取4行数据

   
for (int
i = 0;
i < 4;i++)

   
{

       
char
str[50] = { 0 };

       
fin.getline(str,
50);

       
cout <<
str <<
endl;

   
}

   
fin.close();

   
cin.get();

}

上面结果是输出4行。

4.fout文件输入

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

void
main()

{

   
ofstream
fout;//ofstream.输出文件

   
fout.open("E:\\2.txt");//打开文件

   
fout <<
"锄禾日当午"
<< endl;//写入文件

   
fout <<
"地雷买下土"
<< endl;//写入文件

   
fout <<
"谭胜来跳舞"
<< endl;//写入文件

   
fout <<
"炸成250"
<< endl;//写入文件

   
fout.close();

}

5. fstream,ios::in
| ios::out表示有读写的权限,通过fstream.getline(写入位置,写入长度)。

案例(写入文件又读取文件的方式):

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//通过fstream的方式实现文件读写,要注意的是这种方式要求文件已经存在

void
main()

{

   
//ios::in | ios::out表示有读写的权限

   
fstream
fio("E:\\3.txt",
ios::in
| ios::out);

   
fio <<
"锄禾日当午"
<< endl;//写入文件

   
fio <<
"地雷买下土"
<< endl;//写入文件

   
fio <<
"谭胜来跳舞"
<< endl;//写入文件

   
fio <<
"炸成250"
<< endl;//写入文件

   
fio.close();

   
{

       
fstream
fio("E:\\3.txt",
ios::in
| ios::out);

       
for (int
i = 0;
i < 4;
i++)

       
{

           
char
str[50] = { 0 };

           
fio.getline(str,
50);

           
cout <<
str <<
endl;

       
}

       
fio.close();

   
}

   
cin.get();

}

6.fio.seekg();随机文件指针,将文件指针移动到指定位置开始读写文件

案例如下:

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//通过fstream的方式实现文件读写,要注意的是这种方式要求文件已经存在

void
main()

{

   
//ios::in | ios::out表示有读写的权限

   
fstream
fio("E:\\3.txt",
ios::in
| ios::out);

   
fio <<
"锄禾日当午"
<< endl;//写入文件

   
fio <<
"地雷买下土"
<< endl;//写入文件

   
fio <<
"谭胜来跳舞"
<< endl;//写入文件

   
fio <<
"炸成250"
<< endl;//写入文件

   
fio.close();

   
fio.seekg(ios::beg);
//文件指针,从文件开头开始执行

   
{

       
fstream
fio("E:\\3.txt",
ios::in
| ios::out);

       
for (int
i = 0;
i < 4;
i++)

       
{

           
char
str[50] = { 0 };

           
fio.getline(str,
50);

           
cout <<
str <<
endl;

       
}

       
fio.close();

   
}

   
cin.get();

}

7.文件写入和文件读写

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

void
main()

{

   
ofstream
fout;

   
fout.open("E:\\4.txt");

   
//将内容打印到文件

   
fout <<
"ABC" <<
" " << 123 <<
" " <<
'ch' <<
endl;

   
fout.close();

   
ifstream
fin("E:\\4.txt");

   
char
str[10] = { 0 };//读取字符串

   
int
num = 0;

   
char
ch =
'\0';

   
fin >>
str >>
num >>
ch;

   
std::cout
<< str <<
"\n" <<
num <<
"\n" <<
ch;

 

   
std::cin.get();

}

运行结果:

ABC

123

8.文件拷贝

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

//读写一个字符

//文本与二进制存储

void
main()

{

   
ifstream
fin("E:\\4.txt");//创建读取文件的流

   
ofstream
fout("E:\\40.txt");

   
if (!fin
|| !fout)

   
{

       
std::cout
<< "文件打开失败";

       
return;

   
}

   
std::cout
<< "文件拷贝开始\n";

   
char
ch = 0;

   
//引用的方法读取到一个字符

   
while (fout
&& fin.get(ch))

   
{

       
fout.put(ch);//写入一个字节

   
}

   
fin.close();

   
fout.close();

 

   
std::cout
<< "文件拷贝完成";

   
cin.get();

}

运行结果:生成了一个40.txt,里面存储的是4.txt中的内容

9.文件追加ios:app

#include<iostream>

#include<fstream>

 

using
namespace
std;

 

void
main()

{

   
ofstream
fout("E:\\40.txt",
ios::app);//追加

   
fout <<
"天下英雄,谭胜第一\n";

   
fout.close();

 

   
cin.get();

}

发现在40.txt这个文件的最后面多了:天下英雄,谭胜第一

 

 

时间: 2024-11-01 06:53:11

文件操作ofstream,open,close,ifstream,fin,按照行来读取数据, fstream,iosin iosout,fio.seekg(),文件写入和文件读写,文件拷贝和文件的相关文章

C 和 C++ 文件操作详解

来源:http://www.cnblogs.com/likebeta/archive/2012/06/16/2551662.html 来源:http://www.cnblogs.com/likebeta/archive/2012/06/16/2551780.html C++的文件操作 在C++中,有一个stream这个类,所有的I/O都以这个"流"类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符: 1.插入器(<<) 向流输出数据.比如说系统有一

PHP开发中文件操作疑难问答

中文 前言: PHP中对各类数据库的操作有着支持,对文件的操作也同样有着很丰富的操作方法,很多朋友现在的操作还是基于文件操作可是有的时候在操作文件的时候还存在不少的困惑和疑点,以下是我在日常编写过程中碰到的以及坛上朋友所碰到的关于文件操作的一些问题收藏吧. 问:如何新建一个文件? 答: 1.使用fopen("要建立的文件名","参数"),参数可选w,w+,a,a+ 2.使用exec("echo '' > 要建立的文件名");这样是使用系统方

java文件操作大全

java文件操作大全 文件的建立/检查与删除<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.io.*"%><html><head><title>文件的建立.检查与删除</title></head><body><%String path=request.getRealPath

PHP开发中关于文件操作的疑难问答

前言: PHP中对各类数据库的操作有着支持,对文件的操作也同样有着很丰富的操作方法,很多朋友现在的操作还是基于文件操作可是有的时候在操作文件的时候还存在不少的困惑和疑点,以下是我在日常编写过程中碰到的以及坛上朋友所碰到的关于文件操作的一些问题收藏吧. 问:如何新建一个文件? 答: 1.使用fopen(要建立的文件名,参数),参数可选w,w+,a,a+ 2.使用exec(echo '' > 要建立的文件名);这样是使用系统方式建立这个文件,你还可以使用touch这个linux命令来建立 问:为什么

PHP动态网站制作中关于文件操作的疑难问答

前言: PHP中对各类数据库的操作有着支持,对文件的操作也同样有着很丰富的操作方法,很多朋友现在的操作还是基于文件操作可是有的时候在操作文件的时候还存在不少的困惑和疑点,以下是我在日常编写过程中碰到的以及坛上朋友所碰到的关于文件操作的一些问题收藏吧. 问:如何新建一个文件? 答: 1.使用fopen(要建立的文件名,参数),参数可选w,w+,a,a+ 2.使用exec(echo '' > 要建立的文件名);这样是使用系统方式建立这个文件,你还可以使用touch这个linux命令来建立 问:为什么

.net入门之VB篇:Visual Basic.Net中的文件操作(一)

visual Visual Basic.Net中有三种访问文件系统的方法:第一种是使用 Visual Basic 运行时函数进行文件访问 (VB传统方式直接文件访问):第二种是通过.Net中的System.IO模型访问:第三种是通过文件系统对象模型FSO访问. 文件是存储在某种介质上数据的集合,就其本身来讲,文件只不过是磁盘上的一系列相关的数据字节.当应用程序访问文件时,它必须假定字节是否表示字符.数据记录.整数.字符串等.通过指定文件的访问类型来告诉应用程序假定什么内容. Visual Bas

BCB提供的文件操作的库函数

在BCB中也提供了文件操作的函数,这些函数的功能和前面所介绍的大致相同,但这类函数和BCB关系紧密,能使用BCB中的AnsiString等数据类型,在BCB中用这种方式的文件操作是最方便的,下面我就把这种文件操作详细介绍. 在BCB提供的这组文件操作函数中,可分为三种类型,就是:1.文件名函数,2.文件管理函数:3.文件I/O函数. 1.文件名函数 文件名函数可以对文件的名称.所在子目录.驱动器和扩展名等进行操作.下表列出这些函数及其功能. 函数 说明 ExpandFileName() 返回文件

C语言文件操作函数的编写

1.  编写文件操作的头文件 /************************************************************************** Copyright(C)    :2014-08-5 toto Filename       :file.h Author          :涂作权 Version         :V1.1 Date            :2014-08-05 Description     :文件操作的头文件 Others 

Python中shutil模块的常用文件操作函数用法示例_python

os模块提供了对目录或者文件的新建/删除/查看文件属性,还提供了对文件以及目录的路径操作.比如说:绝对路径,父目录--  但是,os文件的操作还应该包含移动 复制  打包 压缩 解压等操作,这些os模块都没有提供. 而本文所讲的shutil则就是对os中文件操作的补充.--移动 复制  打包 压缩 解压, shutil函数功能:1  shutil.copyfileobj(fsrc, fdst[, length=16*1024]) copy文件内容到另一个文件,可以copy指定大小的内容 先来看看