您的位置:首页 > 编程语言 > C语言/C++

c++ io 学习

2013-08-22 14:52 183 查看
1. 几种读取文件的方式 get(char&), >>(char*), getline(char*, capacity);

#include <iostream>
#include <fstream>
using namespace std;

void main(){
ofstream file("main.txt");
file <<"hello stephen"<< endl;
file <<"your first name is xing"<< endl;
file.close();

char ch;
ifstream file2("main.txt");
while (!file2.eof()){
file2.get(ch);
cout << ch;
}
file2.close();

cout << "======================================" << endl;
file2.open("main.txt");
char str[30];
while (!file2.eof()){
file2 >> str;
cout << str;
}

file2.close();

cout << "======================================" << endl;
file2.open("main.txt");
char strLine[1024];
while (!file2.eof()){
file2.getline(strLine, 1024);
cout << strLine << endl;
}

file2.close();
}

2.文件的几种错误状态,有所了解即可
#include <iostream>
#include <fstream>
using namespace std;

void main()
{
ofstream File1("file2.txt"); //建立file2.txt
File1.close();

//下面的检测代码将会返回错误,这是因为我使用了ios::noreplace打开模式
//它模式在试图打开一个已存在的文件时会返回错误
ofstream Test("file2.txt",ios::_Noreplace);

//上一行将导致ios::failbit错误,我们这就将其演示出来
if(Test.rdstate() == ios::failbit){
cout << "Error, not fatal error...!\n";
}

Test.clear(ios::goodbit); //将当前状态重置为ios::goodbit

if(Test.rdstate() == ios::goodbit) {//检测程序是否已经正确地施行了设置
cout << "Fine!\n";
}

Test.clear(ios::eofbit); //将状态标志设为ios::eofbit. 无实际用途.

if(Test.rdstate() == ios::eofbit) {//检测是否已经正确地施行了设置
cout << "EOF!\n";
}

Test.close();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: