标题:用write()函数向文本文件写入数据后,打开文件却是乱码!希望各位指点指点! ...
只看楼主
IT男year
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:82
专家分:106
注 册:2013-6-9
结帖率:100%
已结贴  问题点数:10 回复次数:7 
用write()函数向文本文件写入数据后,打开文件却是乱码!希望各位指点指点!!!
#include<iostream>
#include<fstream>
using namespace std;
class Student//学生类
{
public:
    Student(float x,float y,float z)//构造函数
    {
        this->x=x;
        this->y=y;
        this->z=z;
    }
    ~Student(){}//析构函数
    void sum()//计算总成绩
    {
        cout<<"总成绩:"<<x+y+z;
    }
private:
    float x;
    float y;
    float z;
};
int main()
{
    Student A(89,90,99);
    fstream out("E:\\c++程序数据\\C.txt");
    if(!out)
    {
        cout<<"文件打开失败!";
    }
    out.write((char *)&A,sizeof(Student));
    out.close();
    return 0;
}
搜索更多相关主题的帖子: 文本文件 private include public 
2013-12-26 13:04
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
得分:2 
字符编码有问题?

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-12-26 14:37
q215236213
Rank: 4
等 级:业余侠客
威 望:1
帖 子:148
专家分:276
注 册:2012-7-24
得分:2 
这个写进去打开必须是乱编
2013-12-26 17:16
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
得分:2 
呵呵,写进去的是数,而不是ascii码,乱码正常

总有那身价贱的人给作业贴回复完整的代码
2013-12-26 17:21
wangdayong99
Rank: 2
等 级:论坛游民
帖 子:9
专家分:97
注 册:2013-12-24
得分:2 
// 我换了一个写法输出到C.txt文件中的是A,B,C三个字母,以前是float型,转为char型存入文件时就成乱码了
//

#include "stdafx.h"

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

class Student//学生类
{
public:
    Student(int x,int y,int z)//构造函数
    {
        this->x=x;
        this->y=y;
        this->z=z;
    }
    ~Student(){}//析构函数
    void sum()//计算总成绩
    {
        cout<<"总成绩:"<<x+y+z;
    }
private:
    int x;
    int y;
    int z;
};
int main()
{
    //Student A(89,90,99);
    Student A(65,66,67);
    fstream out("D:\\C.txt");
    if(!out)
    {
        cout<<"文件打开失败!";
    }
    out.write((char *)&A,sizeof(Student));
    out.close();
}
2013-12-26 18:16
IT男year
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:82
专家分:106
注 册:2013-6-9
得分:0 
回复 3楼 q215236213
那要怎样做才能达到不是乱码呢???
2013-12-26 18:49
IT男year
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:82
专家分:106
注 册:2013-6-9
得分:0 
回复 3楼 q215236213
那要怎样做才能达到不是乱码呢???
2013-12-26 18:49
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:2 
向文件輸出格式化的數據,而不是二進制數據。

授人以渔,不授人以鱼。
2013-12-26 19:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-425720-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056662 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved