C++读取文件,把字符串按“空格”分成若干个字符串
2021/11/28 1:12:03
本文主要是介绍C++读取文件,把字符串按“空格”分成若干个字符串,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文件形如:
1341846313.592026 rgb/1341846313.592026.png 1341846313.592088 depth/1341846313.592088.png 1341846313.654184 rgb/1341846313.654184.png 1341846313.654212 depth/1341846313.654212.png 1341846313.686156 rgb/1341846313.686156.png 1341846313.686172 depth/1341846313.686172.png
代码
#include<iostream> //cin cout #include<fstream> //ifstring ofstream #include<string> //string #include<sstream> //istringstream #include<vector> //vector using namespace std; int main(int atgc, char **argv) { ifstream fin; //1、实例化一个ifstream对象 fin.open(argv[1]); //2、关联文件 /* ifstream fin(filename); //等同于1+2 */ 将把内容原样输出到屏幕********************************************** char ch; while(fin.get(ch)) { cout<<ch; } fin.close(); //断开流与文件的连接,流还在 cout<<endl; //********************************************************************** //fin 以空格,tab,换行 为结束标志读取**************************************** fin.open(argv[1]); string buf; fin>>buf; //读一个字符串,遇到空格就结束 cout<<"buf = "<<buf<<endl; fin>>buf; //读一个字符串,遇到空格就结束 cout<<"buf = "<<buf<<endl; fin>>buf; //读一个字符串,遇到空格就结束 cout<<"buf = "<<buf<<endl; fin>>buf; //读一个字符串,遇到空格就结束 cout<<"buf = "<<buf<<endl; fin.get(ch); //剩了个换行,读掉,扔了,如果是fin.get(ch),就给了ch cout<<ch; //********************************************************************** //getline(fin,VAR_string)读一行**************************************** string line; getline(fin,line); //读一行,从开始到行尾 cout<<"line = "<<line<<endl; getline(fin,line); //读一行,从开始到行尾 cout<<"line = "<<line<<endl; cout<<"length of line = "<<line.length()<<endl<<endl; fin.close(); //******************************************************************** vector<string> str; string word; //把字符串按照空格分割成若干个 //****************************************************************** istringstream devide(line); while(devide>>word) { str.push_back(word); } //******************************************************************* vector<string>::iterator pd; //迭代器 for(pd=str.begin();pd!=str.end();pd++) { cout<<*pd<<endl; } ofstream fout; fout.open("write.txt"); fout<<"下面是写入的内容:"; fout.close(); return 0; }
输入形如
wfq@wfq-xiaoxin:~/MyProjects/CFiles/build$ ./file_read_write ../associations.txt 1341846313.592026 rgb/1341846313.592026.png 1341846313.592088 depth/1341846313.592088.png 1341846313.654184 rgb/1341846313.654184.png 1341846313.654212 depth/1341846313.654212.png 1341846313.686156 rgb/1341846313.686156.png 1341846313.686172 depth/1341846313.686172.png buf = 1341846313.592026 buf = rgb/1341846313.592026.png buf = 1341846313.592088 buf = depth/1341846313.592088.png line = 1341846313.654184 rgb/1341846313.654184.png 1341846313.654212 depth/1341846313.654212.png line = 1341846313.686156 rgb/1341846313.686156.png 1341846313.686172 depth/1341846313.686172.png length of line = 89 1341846313.686156 rgb/1341846313.686156.png 1341846313.686172 depth/1341846313.686172.png
这篇关于C++读取文件,把字符串按“空格”分成若干个字符串的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-29易优CMS安装常见问题汇总-icode9专业技术文章分享
- 2024-06-28易优新手必读安装教程-icode9专业技术文章分享
- 2024-06-28忘记eyoucms后台密码怎么办?-icode9专业技术文章分享
- 2024-06-26终极指南:Scrum中如何设置需求优先级
- 2024-06-26AI大模型企业应用实战(25)-为Langchain Agent添加记忆功能
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding
- 2024-06-23AI大模型企业应用实战(15)-langchain核心组件
- 2024-06-23AI大模型企业应用实战(16)-langchain核心组件
- 2024-06-23AI 大模型企业应用实战(06)-初识LangChain