文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C++语言中io流如何处理

2023-06-25 16:17

关注

这篇文章主要介绍了C++语言中io流如何处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、输入输出流对象

cout:标准输出流

cerr:标准出凑  和cout(只是用于如果是错误时要输出的)

cin  :   标准输入

流对象常用的处理函数

输出字符 put()

输入字符:get()

输出字符串:write()

输入字符串getline()

char ch;cin.get(ch);cout << ch<<endl;cout.put(ch);getchar();//用来消除回车的cout << endl;//字符串的输入输出char str[20] = "";//要初始化不然会出现输出后最后无/0导致输出烫烫烫...cin.getline(str, 20);//这里更安全只能输入20个 多了只取前面20个cout.write(str,20);

流控制字符

//就是以你制定的要求去输出

要加上头文件#incude<iomanip>

boolalpha:  bool类型输出true或者false

setbase(n):设置整数为n的进制进行输出 n只能为8 16 10

int num = 10;cout << setbase(8) << num << endl;cout << setbase(10) << num << endl;cout << setbase(16) << num << endl;

setfill(‘一个字符') : 设置填充字符

setw(n):设置输出的宽度

int num = 10;cout<< setfill('s')<<setw(8) << num;

setprecision :设值有效位数包括整数

double num = 3.14159;cout << setprecision(4) << num << endl;cout << setprecision(4) << num * 10 << endl;

前面一个是3.141后面一个是31.41

setiosflags(ios::left)//对齐方式左对齐setiosflagsios(ios:right)右对齐

二、字符流操作

头文件 #include<sstream>

字符流一般使用stringstream的对象

sstream

包括 isringstream  ostingstream  stringstream

一般用stringstream(可读可写)

stringstream的成员函数

string.str()//获取字符流对象中的字符串

string.str(const string&str)//改变字符流中的字符串

stringstream s("sdflk");cout << s.str() << endl;s.str("ljsflk");s.str(string("sdljf"));//二种都可以 一个是构建一个string的无名对象传字符串cout << s.str() << endl;

字符流的一些基本操作

将数字转换为字符串int num =1234;cout<<to_string(num)<<endl//以字符串输出numstringstream stream;stream << num;//将num流入stream这个类中stream >> str;//stream流出到str这个字符串中cout << str << endl;

同时使用一个流对象多次转换的时候 必须使用clear清除同时也要二次流入在流出

不然是空流

stringstream stream;stream << num;//将num流入stream这个类中stream >> str;//stream流出到str这个字符串中cout << str << endl;string str2;    //如果没有clear函数就没有把num流入到num2stream.clear();stream << num;stream >> str2;cout << str2 << endl;

三. 文件流流类

 头文件 #include<fstream>//ifstream 和ofstream

ofstream:打开文件,写文件

ifstream:打开文件,读操作

fstream:可读可写

mode:

ios::in 读的方式打开文件

ios::out 写的方式打开文件

ios::app追加的方式写文件

ios::ate 在已有的文件,文件指针指向文件末尾

ios::trunc文件不存在,创建文件

ios::binary二进制形式打开文件,默认方式是ascii码方式打开

ios::nocreat不创建的方式

ios::noreplace 不替换

组合方式使用 

用的是位或

ios::in|ios::out 可读写

ios::out|ios::binary二进制写的方式打开文件

判断文件是不是打开成功(防御性操作)

is_open()判断打开是否成功

!文件对象  判断打开文件是否成功

fstream File;File.open("1.tex", ios::in | ios::out | ios::trunc);if (!File.is_open()){cout << "创建文件失败" << endl;}if (!File){cout << "创建文件失败" << endl;}

 文件的读写操作

fstream Read("1.txt",ios::in);//读的方式打开文件///要有这个文件fstream Write("2.txt",ios::out|ios::trunc);//写的方式打开文件//没有这个文件就创建一个while (1){char ch;Read.get(ch);if (Read.eof()){break;}Write.put(ch);}Read.close();Write.close();

四.文件指针定位

 ifstream://读

       istream&seekg(longt int pos);

       istream&seekg(long int pos,ios_base::seekdir begin)

ofstream://写

        ostream&seekp(long int pos):

        ostream&seekp(long int pos,ios_base::seekdir begin);

//ios_base::seekdir//位置

ios::beg 文件开始

ios::cur 文件当前

ios::end 结束位置

fstream read("1.txt", ios::in);read.seekg(5);//移动5个字节后char ch = read.get();//读取5个位置后的第一个cout << ch << endl;

C++语言中io流如何处理

空格也算

文件的一些指向操作

fstream read("1.txt", ios::in);read.seekg(5);//移动5个字节后char ch = read.get();//读取5个位置后的第一个cout << ch << endl;read.seekg(0, ios::beg);ch = read.get();cout << ch << endl;read.seekg(-5, ios::end);//最后位置前面5个ch = read.get();cout << ch << endl;

感谢你能够认真阅读完这篇文章,希望小编分享的“C++语言中io流如何处理”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯