您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
第4讲-从另一个小程序接着说
发布时间:2021-05-11 15:43:54编辑:雪饮阅读()
從文件中讀取内容並輸出到控制臺
從文件中讀取内容可以使用ifstream來實現。
具體實例如:
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream in;
in.open("test.txt");
if(!in){
cerr<<"打開文件失敗"<<endl;
}
char x;
/*
>>:析取器,从流中输入数据
*/
while(in>>x){
/*
<<:插入器,向流输出数据。
*/
cout<<x;
}
cout<<endl;
in.close();
return 0;
}
編譯運行結果如:
鄱陽湖
Press any key to continue
將一串數字輸出到文件中
向文件中寫入内容,可以通過ofstream:文件輸出流
實例如:
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
/*
ofstream:文件輸出流
*/
ofstream out;
out.open("test.txt");
if(!out){
/*
Cerr 一个iostream对象,关联到标准错误,通常写入到与标准输出相同的设备。默认情况下,写到cerr的数据是不缓冲的。
Cerr通常用于输出错误信息与其他不属于正常逻辑的输出内容。
<<:插入器
*/
cerr<<"打開文件失敗!"<<endl;
}
for(int i=0;i<10;i++){
out<<i;
}
out <<endl;
out.close();
return 0;
}
編譯並運行結果如:
上面用了輸出流的open方法實現,也可以使用out配置文件打開模式來實現。
實例如:
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
/*
ios::app:以追加的方式打开文件
*/
ofstream out("test.txt",ios::app);
if(!out){
/*
<<:插入器
*/
cerr << "文件打開失敗"<< endl;
}
for(int i=10;i>0;i--){
out<<i;
}
out << endl;
out.close();
return 0;
}
編譯運行結果如:
Press any key to continue
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\cpp2>type test.txt
0123456789
10987654321
對於文件也可以只使用一個文件流來實現同時輸入輸出
具體實例如:
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
/*
ios::in|ios::out:
文件不存在 打开失败
文件存在 可以打开 打开后在 文件指针在开头 读和写;
*/
fstream fp("test.txt",ios::in|ios::out);
if(!fp){
/*
<<:插入器
*/
cerr << "打開文件失敗!"<<endl;
return 0;
}
//向文件流中插入新的内容(即插入到文件中)
fp<< "www.baidu.com!";
static char str[100];
/*
seekg:
对输入流操作,是对输入文件定位
ios::beg:文件頭
*/
fp.seekg(ios::beg);
/*
提取运算符 ">>",將提取的内容存入到str數組中,所以str數組長度要足夠存的下來自文件中的内容,否則可能會導致内存溢出
從文件輸入流中提取内容到str數組中
*/
fp>>str;
//通過cout輸出,cout 用于在计算机屏幕上显示信息,即輸出到控制臺
cout<<str<<endl;
fp.close();
return 0;
}
編譯運行結果如:
www.baidu.com!987654321
Press any key to continue
同時文件中也被成功寫入了
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\cpp2>type test.txt
www.baidu.com!987654321
关键字词:c++,輸入,輸出
上一篇:第三讲 从一个小程序说起(2)
下一篇:第五讲 输出输入小结