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>;

相关推荐
sulikey27 分钟前
深入讲解:什么是 RAII(资源获取即初始化)——原理、实现、面试常考点与实战示例
c++·面试·智能指针·raii·shared_ptr·auto_ptr·资源获取即初始化
q***d17330 分钟前
Rust在网络中的协议栈
开发语言·网络·rust
艾莉丝努力练剑30 分钟前
【Git:多人协作】Git多人协作实战:从同分支到多分支工作流
服务器·c++·人工智能·git·gitee·centos·项目管理
星释31 分钟前
Rust 练习册 88:OCR Numbers与光学字符识别
开发语言·后端·rust
一生要强的ymy32 分钟前
Polar PHP是世界上最好的语言(困难)
开发语言·php
我命由我123451 小时前
Java NIO 编程 - NIO Echo Server、NIO Client(NIO 异步客户端、NIO Selector 异步客户端)
java·开发语言·网络·java-ee·intellij-idea·intellij idea·nio
前端炒粉3 小时前
35.LRU 缓存
开发语言·javascript·数据结构·算法·缓存·js
星释3 小时前
Rust 练习册 75:ETL与数据转换
开发语言·rust·etl
happyjoey2173 小时前
使用Qt自带的Maintenance Tool将Qt6.9升级为QT6.10
开发语言·qt
p***h6438 小时前
JavaScript在Node.js中的异步编程
开发语言·javascript·node.js