美文网首页
电商专业学习嵌入式软件开发第六十三天

电商专业学习嵌入式软件开发第六十三天

作者: 雨打梨花闭门寒 | 来源:发表于2017-04-14 21:02 被阅读0次
    • C++第九天

    今天是C++的最后一天了,下周讲数据库,讲完数据库再讲完qt,我们的课程就完成了,数据库和qt是我比较感兴趣的,毕竟没有代码那么枯燥,但是因为没有打好基础,决定下周再到新班重新学一遍C基础,最起码要能够自己写出来一个项目。今天主要讲文件操作,然后就开始讲项目,老师带着我们迅速过了一个项目,然后又留了一个项目让我们完成,老师说这个和第一个项目类似,所以两天时间够了,我想大部分同学的时间肯定够了,而我就要到下个班重修了。

    由iostream生成fstream,istream生成ifstream,ostream生成ofstream

    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main(void)
    {
        ofstream ofile;
        //默认以写的方式打开文件,若文件不存在,则自动创建文件
        ofile.open("test.data");
        if (ofile.is_open())
        {
            cout << "open ok\n";
            ofile << "Hello World\n" << 88888 << ' ' << 3.14567 << endl;
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <fstream>
    #include <vector>
    #include <string>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        ofstream ofile;
        ofile.open("stu.info");
    //  ofstream ofile("stu.info");//ofstream自带open函数,相当于上面两行
        if (ofile.is_open())
        {
            cout << "open ok\n";
            Student stu("张三三", 89);
            ofile << stu << endl;
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <string.h>
    #include <fstream>
    using namespace std;
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        ofstream ofile;
        ofile.open("stu.info");//以二进制形式读写文件
        if (ofile.is_open())
        {
            cout << "open ok\n";
            Student stu("张三", 99);
            ofile.write((char *)&stu, sizeof(stu));
            ofile.seekg(0, );//写文件
            Student stu2;
            ofile.read((char*)&stu2, sizeof(stu2));
            cout << stu2.getName << ' ' << stu2.getScore()<< endl;
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <fstream>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name,float score = 0)
        {
            strcpy(m_caName,name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;    
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator << (ofstream &file,const Student &stu);
        friend ifstream &operator >> (ifstream &file,Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    ofstream &operator << (ofstream &file,const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;
        return file;
    }
    ifstream &operator >> (ifstream &file,Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;
        return file;
    }
    int main(int argc,char *argv[])
    {
        ofstream ofile;
        ofile.open("stu.info");//以二进制形式读写文件
        if(ofile.is_open())
        {
            cout << "open ok\n";
            Student stu("zhangsan",99);
            ofile.write((char *)&stu, sizeof(stu));
        
    //      ofile.seekp();//写文件
    
            ofile.close();
            ifstream ifile("stu.info");
            Student stu2;
    
    //      ifile.seekp();//读文件
    
            ifile.read((char *)&stu2,sizeof(stu2));
            ifile.close();
            cout << stu2.getName() << ' ' << stu2.getScore() << endl;
        }
        else
        {
            cout << "open failed\n";
        }
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <fstream>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name,float score = 0)
        {
            strcpy(m_caName,name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;    
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator << (ofstream &file,const Student &stu);
        friend ifstream &operator >> (ifstream &file,Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    ofstream &operator << (ofstream &file,const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;
        return file;
    }
    ifstream &operator >> (ifstream &file,Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;
        return file;
    }
    int main(int argc,char *argv[])
    {
        fstream file;
    //  file.open("stu.info");//默认以读写方式打开文件会保留文件内容
        file.open("stu.info",ios_base::in|ios_base::out|ios_base::trunc);//以读\写\截断的方式打开文件会清空文件里面内容
        if(file.is_open())
        {
            Student s1("lisi",78);
            file.write((char *)&s1,sizeof(s1));//向文件写数据
            cout << file.tellp() << endl;//tellp文件开始位置
    
            Student s2;
            file.seekg(0,ios_base::beg);//读数据
            file.read((char *)&s2,sizeof(s2));  
            cout << s2.getName() << ' ' << s2.getScore() << endl;
            file.close();
        
            cout << "open ok\n";
        }
        return 0;
    }
    
    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main(void)
    {
        ifstream ifile;
        //若文件不存在则不会创建文件
        ifile.open("newdata.info");
        if (ifile.is_open())
        {
            string str;
            int data;
            int data2;
            float data3;
            ifile >> str >> data >> data2 >> data3;
            cout << str << ' ' << data << ' ' << data2 << ' ' << data3 << endl;
            cout << "open ok\n";
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <fstream>
    #include <vector>
    #include <string>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        ifstream ifile;
        ifile.open("stu.info");
    //      ifstream ifile("stu.info");//ifstream自带open函数,相当于上面两行
        if (ifile.is_open())
        {
            cout << "open ok\n";
            Student stu;
            ifile >> stu;
            cout << stu.getName() << ' ' << stu.getScore() << endl;
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <string.h>
    #include <fstream>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        fstream file;
    //  file.open("stu.info");//默认以读写方式打开文件会保留文件内容
        file.open("stu.info", ios_base::in|ios_base::out|ios_base::trunc);//以读\写\截断的方式打开文件会清空文件里面内容
        if (file.is_open())
        {
            Student *pstu = NULL;
            for (int i=0; i< 10; i++)
            {
                pstu = new Student("zhangsan", 60+i);
                file.write((char *)pstu,sizeof(Student));
            }
            Student tmp;
            file.seekg(0, ios_base::beg);
    //        while (cin >> data)
            while (file.read((char*)&tmp,sizeof(Student)))
            {
                cout << tmp.getScore() << endl;
            }
    //        while (!file.eof())
    //        {
    //            file.read((char*)&tmp,sizeof(Student));
    //            if(!file.eof())
    //            cout << tmp.getScore() << endl;
    //        }
            file.close();
            cout << "open ok\n";
        }
    
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <fstream>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        fstream file;
        file.open("stu.info", ios_base::in|ios_base::out|ios_base::trunc);
        if (file.is_open())
        {
            Student s1("zhangsan", 78);
            file.write((char *)&s1, sizeof(s1));
            cout << file.tellp() << endl;
    
            Student s2;
            file.seekg(0, ios_base::beg);
            file.read((char *)&s2, sizeof(s2));
            cout << s2.getName()<< ' ' << s2.getScore()<< endl;
            file.close();
            cout << "open ok\n";
        }
        return 0;
    }
    
    #include <iostream>
    #include <vector>
    #include <string>
    #include <fstream>
    #include <string.h>
    using namespace std;
    
    class Student
    {
    public:
        Student(){}
        Student(const char *name, float score=0)
        {
            strcpy(m_caName, name);
            m_fScore = score;
        }
        const char *getName()
        {
            return m_caName;
        }
        float getScore()
        {
            return m_fScore;
        }
        friend ofstream &operator<< (ofstream &file, const Student &stu);
    friend ifstream &operator>> (ifstream &file, Student &stu);
    private:
        char m_caName[32];
        float m_fScore;
    };
    ofstream &operator<< (ofstream &file, const Student &stu)
    {
        file << stu.m_caName << ' ' << stu.m_fScore << endl;    
        return file;
    }
    ifstream &operator>> (ifstream &file, Student &stu)
    {
        file >> stu.m_caName >> stu.m_fScore;   
        return file;
    }
    int main(void)
    {
        ofstream ofile;
        ofile.open("stu.info");
        if (ofile.is_open())
        {
            cout << "open ok\n";
            Student stu("张三", 99);
            ofile.write((char *)&stu, sizeof(stu));
    //        ofile.seekp();
    
            ofile.close();
            ifstream ifile("stu.info");
            Student stu2;
    //        ifile.seekg();
            ifile.read((char*)&stu2, sizeof(stu2));
            ifile.close();
            cout << stu2.getName()<< ' ' << stu2.getScore()<< endl;
        }
        else
        {
            cout << "open failed\n";
        }
    
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:电商专业学习嵌入式软件开发第六十三天

          本文链接:https://www.haomeiwen.com/subject/pzdgattx.html