在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C++之文件操作

wang123a ? 來(lái)源:wang123a ? 作者:wang123a ? 2023-07-21 10:52 ? 次閱讀

C++中文件操作頭文件:fstream

文件類型:文件文件和二進(jìn)制文件

文件操作三大類:

ofstream 寫(xiě)操作
ifstream 讀操作
fstream:讀寫(xiě)操作

文件打開(kāi)方式:

標(biāo)志 說(shuō)明
ios::in 只讀
ios::out 只寫(xiě),文件不存在則創(chuàng)建,存在則打開(kāi)并截?cái)嘣瓋?nèi)容
ios::ate 打開(kāi)一個(gè)已有的文件,并指向文件讀指針指向文件尾,若文件不存在,則打開(kāi)出錯(cuò)
ios::app 打開(kāi)文件,從文件尾添加內(nèi)容,若文件不存在則創(chuàng)建
ios::trunc 打開(kāi)文件同時(shí)會(huì)截?cái)嘣瓋?nèi)容,單獨(dú)使用時(shí)與ios::out相同
ios::binary 以二進(jìn)制方式打開(kāi)
ios::in|ios::out 打開(kāi)文件,可讀也可寫(xiě),文件打開(kāi)時(shí)原內(nèi)容保持不變,若不存在則打開(kāi)出錯(cuò)
ios::in|ios::out|ios::trunc 打開(kāi)文件,可讀寫(xiě),會(huì)截?cái)嘣瓋?nèi)容,文件不存在則創(chuàng)建

1.文本方式寫(xiě)入示例

#include 
#include 
using namespace std;
int main()
{
	/*1.創(chuàng)建文件*/
	ofstream fp;
	fp.open("test.txt",ios::out);//創(chuàng)建文件,會(huì)截?cái)嘣瓋?nèi)容
	if (!fp.is_open())//文件打開(kāi)失敗返回false
	{
		cout 

2.文本方式讀取示例

C++中讀取數(shù)據(jù)有多種方式實(shí)現(xiàn)。

2.1 示例1:重載>>讀取

#include 
#include 
using namespace std;
int main()
{
	ifstream ifs;
	ifs.open("test.txt",ios::in);//只讀方式打開(kāi)
	if (!ifs.is_open())
	{
		cout > str)//以字符串方式讀取
	{
		cout 

2.2 利用成員函數(shù)getline讀取

#include 
#include 
using namespace std;
int main()
{
	ifstream ifs;
	ifs.open("test.txt",ios::in);//只讀方式打開(kāi)
	if (!ifs.is_open())
	{
		cout 

2.3 單個(gè)字符方式讀取get()

#include 
#include 
using namespace std;
int main()
{
	ifstream ifs;
	ifs.open("test.txt",ios::in);//只讀方式打開(kāi)
	if (!ifs.is_open())
	{
		cout 

3.二進(jìn)制方式讀寫(xiě)示例

  • 二進(jìn)制數(shù)據(jù)寫(xiě)入文件
函數(shù):write(const _Elem* _Str, streamsize _Count)
 形參:_Str --寫(xiě)入的內(nèi)容的起始地址
       _Count  --寫(xiě)入的字節(jié)數(shù)
  • 二進(jìn)制數(shù)據(jù)讀取文件
read(_Elem* _Str, streamsize _Count) ;
 形參:_Str --讀取內(nèi)容存放緩沖區(qū)
       _Count --要讀取的字節(jié)數(shù)
#include 
#include 
#include 
using namespace std;
class Person
{
public:
	Person() {}
	Person(const char* name, int age)
	{
		strcpy_s(this->name, name);
		this->age = age;
	}
	char name[20];//姓名
	int age;//年齡
};
int main()
{
	/*二進(jìn)制寫(xiě)入數(shù)據(jù)示例*/
	fstream fs("test.doc", ios::out | ios::binary);
	if (!fs.is_open())
	{
		cout 

4.C++指針偏移

C++文件指針偏移
  seekg(pos_type _Pos,ios_base::seekdir _Way)  --用于輸入流,偏移位置指針到指定位置
  seekp(pos_type _Pos,ios_base::seekdir _Way)  --用于輸出流,偏移位置指針到指定位置
	第一個(gè)參數(shù):偏移量
	第二個(gè)參數(shù):基于哪個(gè)位置
				ios::beg  --文件頭
				ios::end  --文件尾
				ios::cur  --當(dāng)前位置
  streamoff tellg()  --用于輸入流,返回當(dāng)前指針位置,streamoff 是一個(gè)long long類型
  streamoff tellp()  --用于輸出流,返回當(dāng)前指針位置
  返回值返回基于文件頭的偏移量,字節(jié)為單位。失敗則返回-1

示例:

#include 
#include 
using namespace std;
int main()
{
	ifstream fs;
	fs.open("test.txt", ios::in );//打開(kāi)文件,不存在則打開(kāi)失敗,不會(huì)截?cái)嘣瓋?nèi)容
	if (!fs.is_open())
	{
		cout > buff)
	{
		cout 
wKgZomS4_QKAcX2TAAPAXxnDagM496.png

5.C++中使用fopen系列函數(shù)示例

#define _CRT_SECURE_NO_DEPRECATE
#include 
using namespace std;
int main()
{
	cout 
wKgZomS5FoKALLkTAASjGoeV-P4987.png


審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4372

    瀏覽量

    64288
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2117

    瀏覽量

    74823
  • 文件操作
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    5403
  • 頭文件
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    10048
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    C++STL算法(二)

    C++STL算法(二)
    的頭像 發(fā)表于 07-18 14:49 ?1570次閱讀
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>STL算法(二)

    c++STL算法(三)

    c++STL算法(三)
    的頭像 發(fā)表于 07-18 15:00 ?1850次閱讀
    <b class='flag-5'>c++</b><b class='flag-5'>之</b>STL算法(三)

    MSP430裸奔框架C++程序源碼(菜農(nóng)C++裸奔大法系列之一) 轉(zhuǎn)載

    /*------------------------------------------------------------------------MSP430裸奔框架C++程序源碼(菜農(nóng)C++裸奔大法)本程序主要表現(xiàn)了
    發(fā)表于 02-01 11:06

    在main文件中怎樣去使用C++

    ESP32 ESP-IDF 學(xué)習(xí)筆記(五 - 2)【使用C++的工程】文章目錄ESP32 ESP-IDF 學(xué)習(xí)筆記(五 - 2)【使用C++的工程】1、導(dǎo)言2、在main
    發(fā)表于 01-07 07:44

    C/C++文件大全

    C/C++文件一覽,一本很好的工具速查手冊(cè)
    發(fā)表于 11-10 17:45 ?0次下載

    C++ Builder 操作ini文件讀寫(xiě)

    C++ Builder 操作ini文件讀寫(xiě)
    發(fā)表于 12-15 22:50 ?0次下載

    如何在C++代碼中使用C文件

    。 12.3.1 在C++中使用系統(tǒng)C文件 要包括標(biāo)準(zhǔn)的系統(tǒng) C文件,如 stdio.h,不必進(jìn)行任何特殊
    發(fā)表于 10-19 09:24 ?3次下載

    虛擬機(jī):使用cscope瀏覽C++文件

    cscope 本意是用來(lái)查看c文件的。但是也可以查看C++文件。方法如下:
    的頭像 發(fā)表于 06-22 14:29 ?2264次閱讀
    虛擬機(jī):使用cscope瀏覽<b class='flag-5'>C++</b><b class='flag-5'>文件</b>

    C++操作符重載學(xué)習(xí)的總結(jié)

    操作符重載是c++的強(qiáng)大特性之一;操作符重載的本質(zhì)是通過(guò)函數(shù)擴(kuò)展操作符的功能;operator 關(guān)鍵字是實(shí)現(xiàn)操作符重載的關(guān)鍵。
    的頭像 發(fā)表于 12-24 16:36 ?843次閱讀

    LabVIEW教學(xué)數(shù)據(jù)文件操作

    LabVIEW教學(xué)數(shù)據(jù)文件操作說(shuō)明。
    發(fā)表于 03-29 15:18 ?30次下載

    C++設(shè)計(jì)新思維-泛型編程與設(shè)計(jì)應(yīng)用

    C++設(shè)計(jì)新思維-泛型編程與設(shè)計(jì)應(yīng)用
    發(fā)表于 11-16 15:59 ?3次下載

    C++入門表達(dá)式

    C++中提供了很多操作符且定義了什么時(shí)候可以用于操作基本類型,其還允許我們定義用于操作class類型的操作符,接下來(lái)幾篇文章將會(huì)介紹
    的頭像 發(fā)表于 03-17 13:55 ?1071次閱讀

    C++學(xué)習(xí)筆記c++的基本認(rèn)識(shí)

    自這篇文章我們即將開(kāi)始C++的奇幻之旅,其內(nèi)容主要是讀C++ Primer的總結(jié)和筆記,有興趣可以找原版書(shū)看看,對(duì)于學(xué)習(xí)C++還是有很大幫助的。這篇文章將從一個(gè)經(jīng)典的程序開(kāi)始介紹C++
    的頭像 發(fā)表于 03-17 13:57 ?929次閱讀

    C++入門通用算法

    C++ 是一種強(qiáng)大的編程語(yǔ)言,它提供了許多通用算法,可以用于各種容器類型。這些算法是通過(guò)迭代器來(lái)操作容器中的元素,因此它們是通用的,可以用于不同類型的容器。在本篇博客中,我們將詳細(xì)介紹 C++ 的通用算法。
    的頭像 發(fā)表于 05-17 09:40 ?929次閱讀

    C++之父新作帶你勾勒現(xiàn)代C++地圖

    為了幫助大家解決這些痛點(diǎn)問(wèn)題,讓大家領(lǐng)略現(xiàn)代C++美,掌握其中的精髓,更好地使用C++C++之父Bjarne Stroustrup坐不住了,他親自操刀寫(xiě)就了這本《
    的頭像 發(fā)表于 10-30 16:35 ?1252次閱讀
    <b class='flag-5'>C++</b>之父新作帶你勾勒現(xiàn)代<b class='flag-5'>C++</b>地圖
    主站蜘蛛池模板: 女上男下边吃奶边做视频成都 | 操插干 | 免费观看成年欧美1314www色 | 男人的天堂视频在线 | 欧美巨大xxxx做受中文字幕 | 免费观看激色视频网站bd | 激情五月开心网 | 欧洲精品不卡1卡2卡三卡四卡 | 特级淫片aaaaa片毛片 | 国产一级特黄aa大片免费 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 | 亚洲免费区 | 中文永久免费看电视网站入口 | 青草视频网站在线观看 | 国产三级视频 | 国产成人毛片视频不卡在线 | 91色在线观看 | 一区二区三区高清视频在线观看 | 日本三级在线播放线观看2021 | 成人黄色免费观看 | 五月天丁香婷婷开心激情五月 | 三a大片| 亚洲乱论| 一级毛片免费不卡直观看 | 四虎影视最新网址 | 国产香蕉在线精彩视频 | 婷婷丁香色综合狠狠色 | 狠狠操狠狠摸 | 日韩一级片免费观看 | 三级在线观看视频网站 | 国产高清一级视频在线观看 | 91成人免费在线视频 | a黄色网| 哺乳期xxxx视频 | 天堂资源在线官网bt | 中文字幕一区二区三区免费看 | 国产黄色片在线观看 | 三级在线观看免播放网站 | 中日韩在线视频 | 免费人成在线观看网站品爱网日本 | 日本理论在线观看被窝网 |