C++文件操作示例

C++ 标准库提供了 3 个类用于实现文件操作,它们统称为文件流类,这 3 个类分别为:

ifstream:专用于从文件读取数据

ofstream:专用于向文件写入数据

fstream:可读可写

这三个文件流类都位于 fstream 头文件中;

fstream 类拥有 istream、ostream 类的全部成员方法。

示例1;读文件,

cpp 复制代码
#include <fstream>  
#include <iostream>  

using namespace std;  

void main()  
{  
	int datalen=0; 
    double num[100];
 
    //打开文件流
    ifstream file("test2.txt");
    
    //判断文件指针是否为空
    while(!file.eof() ) 
        //若不为空,则循环读取存入数组,这里的读取以空格、Tab、回车结束,以单词为单位
        file>>num[datalen++];
 
    //输出数组元素
    for(int i=0;i<datalen;i++)
    {
        cout<<num[i]<<" ";
    }
	cout<<"\n";
 
    //关闭文件流
    file.close();   
}  

示例2;写文件,

cpp 复制代码
#include <iostream>
#include <fstream>
#include<iomanip>

using namespace std;

int main() {
	
	int month = 10 , day = 1;	
	ofstream outFile;	//定义ofstream对象outFile
	
	outFile.open("me.txt");	//打开文件	
	if(!outFile) return -1;

	outFile << "国庆节:" << month << "月" << day << "日" << endl; //写入操作 	
	outFile<<setw(20)<<"姓名:"<<"张三"<<endl;
	outFile<<setw(20)<<"家庭地址:"<<"华盛顿"<<endl;
	outFile.close();	//关闭文件
	
	return 0;
}

其中,

setw用来控制输出字符串的长度,例如,

cout<<setw(10)<<"hello"<<endl;

C++会在"hello"前面加入5个空格,使"hello"的长度变为10;

使用setw需要 #include<iomanip>;

相关推荐
xlp666hub4 小时前
Leetcode 第三题:用C++解决最长连续序列
c++·leetcode
会员源码网5 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
xlp666hub7 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
不想写代码的星星8 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub1 天前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
不想写代码的星星1 天前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
不想写代码的星星2 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
樱木Plus4 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++
blasit6 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_7 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++