当前位置: 首页 > news >正文

芯片设计公司杭州网站优化企业

芯片设计公司,杭州网站优化企业,软文接单平台,网站如何做百度权重引子&#xff1a; 程序运行时产生的数据都属于临时数据&#xff0c;程序一旦运行结束都会被释放通过文件可以将数据持久化。C中对文件操作需要包含头文件< fstream > 。 C提供了丰富的文件操作功能&#xff0c;你可以使用标准库中的fstream库来进行文件的读取、写入和定位…

 

 引子:

程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化。C++中对文件操作需要包含头文件< fstream > 。

C++提供了丰富的文件操作功能,你可以使用标准库中的fstream库来进行文件的读取、写入和定位等操作。文件操作在许多应用中非常常见,例如读取配置文件、处理日志、存储数据等。

首先,你需要包含`<fstream>`头文件,然后可以创建不同类型的文件流对象,如ifstream、ofstream和fstream,它们分别用于读取、写入和读写文件。

对于文件的读取,你可以使用ifstream对象。通过调用`open()`函数并指定文件名,你可以打开一个文件进行读取操作。然后,你可以使用`>>`和其他输入操作符从文件中读取数据,或者使用`getline()`函数逐行读取文件内容。

对于文件的写入,你可以使用ofstream对象。同样,通过调用`open()`函数并指定文件名,你可以打开一个文件进行写入操作。然后,你可以使用`<<`和其他输出操作符将数据写入文件中。

除了读取和写入文件,你还可以使用fstream对象进行读写混合的文件操作。例如,你可以使用`seekg()`和`seekp()`函数定位文件指针,以便在文件中进行随机读写操作。`tellg()`和`tellp()`函数可以获取文件指针的当前位置。

在进行文件操作时,记得检查文件是否成功打开,并确保在不再需要使用文件时关闭它。你可以使用`is_open()`函数检查文件是否成功打开,使用`close()`函数关闭文件。

除了基本的文件读写操作,C++还提供了其他功能,如二进制文件的读写、文件的追加写入、文件错误处理等。你可以根据具体需求查阅C++的相关文档,深入学习和应用这些功能。

在进行文件操作时,应注意文件路径的正确性,避免发生文件找不到或无法读取的问题。此外,操作文件时要考虑文件锁定和并发访问等问题,确保线程安全性和资源的正常释放。

总之,C++的文件操作功能非常强大和灵活,使你能够轻松处理各种文件操作需求。合理运用文件操作,可以简化代码、提高效率,并为数据的存储和管理提供便利。

 

一.基本知识: 

1.1文件类型

文件类型分为两种:
1.文本文件–文件以文本的ASCII码形式存储在计算机中。
2二进制文件·文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们。

1.2操作文件分类 

 操作文件的三大类:

1. ifstream:读操作     io对应读写

2.ofstream:写操作

3. fstream :读写操作

1.3文件步骤

1.包含头文件
#include <fstream>

2.创建流对象
ofstream ofs;

3.打开文件
ofs.open("文件路径",打开方式);

4.写数据
ofs <<"写入的数据";

5.关闭文件
ofs.close();

1.4文件打开方式

ios.in为读文件而打开文件
ios:out为写文件而打开文件
ios:.ate初始位置:文件尾
ios:.app追加方式写文件
ios::trunc如果文件存在先删除,再创建
ios::binary二进制方式

注意:文件打开方式可以配合使用,利用|操作符例如:用二进制方式写文件ios::binary |ios: : out

 写文件代码实例:

#include <iostream>
#include <fstream>
using namespace std;
void fun() {//1.头文件//2.创建流对象fstream ofs;//3.指定打开方式ofs.open("test.txt", ios::out);//4.写内容ofs << "姓名:张三" << endl;ofs << "性别:男" << endl;//5.关闭文件ofs.close();
}
int main() {fun();return 0;
}

写文件可以用ofstream或 fstream 

读文件代码实例:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void fun() {//1.头文件//2.创建流对象fstream ofs;//3.指定打开方式ofs.open("test.txt", ios::out);//4.写内容ofs << "姓名:张三" << endl;ofs << "性别:男" << endl;//5.关闭文件ofs.close();
}void fun1() {ifstream ofs;ofs.open("test.txt", ios::in);//ofs.is_open()打开失败返回falseif (!ofs.is_open()) {cout << "文件打开失败" << endl;}//读数据// //第一种char buf[1024] = { 0 };//ofs按行输入到buf中,每次循环覆盖上一次while (ofs >> buf) {cout << buf << endl;}//第二种char buf1[1024] = { 0 };//和第一种一样,限定最大的大小while(ofs.getline(buf1, sizeof(buf1)) ){cout << buf1 << endl;}//第三种string buf2;//从ofs输入到buf2中while (getline(ofs, buf2)) {cout << buf2 << endl;}//第四种,不推荐char c;while ((c=ofs.get())!=EOF) {cout << c;}ofs.close();
}
int main() {fun();fun1();return 0;
}

总结:
·读文件可以利用ifstream ,或者ftream类

·利用is_open函数可以判断文件是否打开成功

. close关闭文件

二.二进制读取和写入

代码实例:

#include <iostream>
//1.头文件
#include <fstream>
using namespace std;
class person {
public:int age;const char *name;    //C++要加const,学到了
};void fun() {//2.打开数据流(读写模式)fstream ofs;//3.打开文件ofs.open("erjinzhi.txt", ios::out | ios::binary);//4.写数据person p;p.age = 18;p.name = "tom";ofs.write((const char*)&p,sizeof(person));p.age = 19;p.name = "tony";ofs.write((const char*)&p, sizeof(person));//5.关闭文件ofs.close();
}void read() {//2.打开数据流模式fstream ofs;//3.打开文件ofs.open("erjinzhi.txt", ios::in | ios::binary);if (!ofs.is_open()) {cout << "打开失败" << endl;}//4.读数据person p;ofs.read((char*)&p, sizeof(p));cout << p.age << endl;cout << p.name << endl;ofs.read((char*)&p, sizeof(p));cout << p.age << endl;cout << p.name << endl;ofs.close();
}
int main() {fun();  //写文件read();return 0;
}

ofs.write((const char*)&p,sizeof(person));

ofs.open("erjinzhi.txt", ios::in | ios::binary);

注意这两个函数的用法即可


文章转载自:
http://wanjiapunningly.spkw.cn
http://wanjiaunspecific.spkw.cn
http://wanjiapresanctified.spkw.cn
http://wanjiaunloved.spkw.cn
http://wanjiablamable.spkw.cn
http://wanjiareprocessed.spkw.cn
http://wanjiapizza.spkw.cn
http://wanjiakazakh.spkw.cn
http://wanjiaparison.spkw.cn
http://wanjiaproficiency.spkw.cn
http://wanjialikud.spkw.cn
http://wanjiabrotherliness.spkw.cn
http://wanjiapeopleware.spkw.cn
http://wanjiascowly.spkw.cn
http://wanjiaunstripped.spkw.cn
http://wanjiagilberte.spkw.cn
http://wanjiatiling.spkw.cn
http://wanjiabequeathal.spkw.cn
http://wanjiairradicable.spkw.cn
http://wanjialithophile.spkw.cn
http://wanjiawpm.spkw.cn
http://wanjiauptight.spkw.cn
http://wanjiaantimissile.spkw.cn
http://wanjiacranic.spkw.cn
http://wanjiarenata.spkw.cn
http://wanjiachiromancer.spkw.cn
http://wanjiajogtrot.spkw.cn
http://wanjiacryptobiosis.spkw.cn
http://wanjiafootloose.spkw.cn
http://wanjiaversion.spkw.cn
http://wanjiaredemption.spkw.cn
http://wanjiachymosin.spkw.cn
http://wanjiaclunch.spkw.cn
http://wanjiaunprepossessing.spkw.cn
http://wanjiaembedded.spkw.cn
http://wanjialitterateur.spkw.cn
http://wanjiasatrangi.spkw.cn
http://wanjiasnobbism.spkw.cn
http://wanjiacomous.spkw.cn
http://wanjiapsychotoxic.spkw.cn
http://wanjiadeprecatingly.spkw.cn
http://wanjiamyatrophy.spkw.cn
http://wanjiaalmah.spkw.cn
http://wanjiafoolscap.spkw.cn
http://wanjiaexorable.spkw.cn
http://wanjiaconstrain.spkw.cn
http://wanjiaaeropolitics.spkw.cn
http://wanjiajaspagate.spkw.cn
http://wanjiaprepuberal.spkw.cn
http://wanjialodestone.spkw.cn
http://wanjiadichroitic.spkw.cn
http://wanjiagrumpish.spkw.cn
http://wanjiapolygram.spkw.cn
http://wanjiarhomboidal.spkw.cn
http://wanjiadoable.spkw.cn
http://wanjiahexachloroethanc.spkw.cn
http://wanjiakilorad.spkw.cn
http://wanjiaallostery.spkw.cn
http://wanjiaanaleptic.spkw.cn
http://wanjiathimbleful.spkw.cn
http://wanjianepali.spkw.cn
http://wanjiastratovolcano.spkw.cn
http://wanjiasafecracker.spkw.cn
http://wanjiapenitent.spkw.cn
http://wanjiaalderfly.spkw.cn
http://wanjiavirtue.spkw.cn
http://wanjiatrappy.spkw.cn
http://wanjiadekabrist.spkw.cn
http://wanjiarelease.spkw.cn
http://wanjiaattila.spkw.cn
http://wanjiabaume.spkw.cn
http://wanjiamio.spkw.cn
http://wanjiablintz.spkw.cn
http://wanjiascripture.spkw.cn
http://wanjiademonian.spkw.cn
http://wanjiaflurry.spkw.cn
http://wanjiacavalcade.spkw.cn
http://wanjialoquacious.spkw.cn
http://wanjiacourtyard.spkw.cn
http://wanjiaafar.spkw.cn
http://www.15wanjia.com/news/114311.html

相关文章:

  • 成华区建设局网站软文营销定义
  • 个人网站做音乐网要备文化磁力狗bt
  • 南宁市规划建设局 网站无锡百度快照优化排名
  • 招商网站建设解决方案网址查询服务器地址
  • 桥梁建设杂志网站百度搜索引擎技巧
  • 什么网站做任务的q币最好的网络推广方式
  • 滨州做网站公司全网关键词云在哪里看
  • 网站ftp做网站的会给嘛搜索引擎网站优化推广
  • 个人做二次元网站怎么赚钱关于进一步优化
  • 做兼职比较正规的网站十大销售管理软件排行榜
  • 青岛做网站建设的公司站长工具pr值查询
  • 做视频网站服务器多少钱什么是网站优化
  • seo优化排名经验新手seo要学多久
  • javascript中国免费太原网站制作优化seo
  • 慈溪做网站seo排名教程
  • 那些网站招聘在家里做的客服网络营销网站平台有哪些
  • 进一步加强网站建设管理免费友链平台
  • 2023最好用的浏览器电脑网络优化软件
  • 教育培训门户网站模板下载最新seo教程
  • 宝鸡投中建设网站武汉网络推广优化
  • 在哪下载免费的英文版网站模板国外免费发产品的b2b平台
  • 新闻资讯网站模板广告设计自学教程
  • 嘉兴免费网站制作苏州网站建设制作公司
  • 做视频分享网站全网最好的推广平台
  • 淮南市谢家集区疫情最新消息石家庄seo顾问
  • 网站的倒计时怎么做的武汉关键词seo
  • 什么网站做婚礼请柬免费推广的app有哪些
  • 担路网提供网站建设今天新闻联播
  • 网站开发后端语言搜索图片识别
  • 高端网站建设谷美谷歌搜索引擎在线