C++文件的读取写入入门小例子

来源:互联网 发布:襄阳淘宝生态城骗局 编辑:程序博客网 时间:2024/06/11 13:31
#include <fstream>#include <iostream>#include <iomanip>using namespace std;int main(){    int i;    cout<<"选择功能:\n1:write\n2.read\n";    cin>>i;    switch(i)    {    case 1:        {            char filename1[256];            cout<<"输入要写入的文件名"<<endl;            cin>>filename1;            int row,col;            cout<<"输入矩阵的行,列"<<endl;            cin>>row>>col;            float *p=new float[col*row];            if(p==NULL)            {                cout<<"allocalte error"<<endl;                return -1;            }            ofstream outfile(filename1);            if(!outfile)            {                cout<<"can not open the outfile"<<endl;                return -1;            }            outfile<<row<<" "<<col<<endl;            for(int i=0;i<row;i++)            {                char buff[300];                for(int j=0;j<col;j++)                {                    cin>>p[i*col+j];                    //sprintf(buff,"%f",p[i*col+j]);                    outfile<<setiosflags(ios::fixed)<<setprecision(6)<<p[i*col+j]<<" ";                }                outfile<<endl;                //outfile<<buff<<endl;            }            outfile.close();            delete []p;            break;        }     case 2:        {             char filename2[256];            cout<<"输入要读入的文件名"<<endl;            cin>>filename2;            ifstream infile(filename2);            if(!infile)            {                cout<<"cannot open file2"<<endl;                return -1;            }            float ch[9];            int count,row,col;            float sum;            //infile.unsetf(ios::skipws);            infile>>row>>col;            count=row*col;            for(int i=0;i<count;i++)            {                infile>>ch[i];                //count++;                cout<<ch[i]<<" ";                sum+=ch[i];            }            cout<<endl;            cout<<sum/count<<endl;            infile.close();            break;        }     default:        cout<<"wrong input"<<endl;        break;    }    return 0;}

注意:infile(ifstream) outfile(ofstream)的使用和cin,cout类似,支持各种基本类型。

原创粉丝点击