繁体   English   中英

在C ++中使用类对象编写时txt文件中的未识别文本

[英]Unidentified text in txt file while writing using class object in C++

当我使用类对象将数据输入文本文件时,该文本文件显示一些奇怪的文本,而不是我输入的数据。 我输入了“ Flash”和100,但是文本文件显示了一些奇怪的文本。 链接到文本文件的快照 有什么帮助吗?

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

class Details
{
        string name;
        int roll;
    public:
        void get();
};
void Details::get()
{
    cout<<"Enter name : ";
    cin>>name;
    cout<<"Enter Roll No. : ";
    cin>>roll;  
}  

int main()
{
    Details obj;
    ofstream fout;
    fout.open("newdetails.txt",ios::app);
    obj.get();
    fout.write((char *)&obj,sizeof(obj));
    fout.close();
    return 0;
}

您正在以二进制格式编写文件 -在普通的文本编辑器中不会产生人类可读的文本。

要以人类可读的文本格式写入文件,请使用以下方法:

fout << obj.name << ' ' << obj.roll << '\n';

一个小时前,我回答了一个非常类似的问题-请阅读该问题以及我的答案,以在此处了解更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM