游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3600|回复: 12

float数组如何保存文件?

[复制链接]

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2009-5-22 23:17:00 | 显示全部楼层 |阅读模式
我有float类型的数组。
如何保存成文件a.dat呢?
有没有简单点的代码?

4

主题

46

帖子

46

积分

注册会员

Rank: 2

积分
46
发表于 2009-5-25 15:43:00 | 显示全部楼层

Re:float数组如何保存文件?

#include <fstream>
using namespace std;

int main()
{
        float aaa[10];

        ofstream ofs;
        ofs.open("e:\\a.bat");
        ofs.write((char*)aaa, sizeof(aaa));
        ofs.close();

        return 0;
}

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
 楼主| 发表于 2009-5-28 13:11:00 | 显示全部楼层

Re: Re:float数组如何保存文件?

helium: Re:float数组如何保存文件?
#include <fstream>
using namespace std;如果把这一行去掉,下面的代码应该如何变化呢?

int main()
{
float aaa[10];

ofstream ofs;
ofs.open("e:\\a.bat");
ofs.write((char*)aaa, sizeof(aaa));
ofs.close();

return 0;
}

谢谢教导

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
 楼主| 发表于 2009-5-28 13:13:00 | 显示全部楼层

Re: Re:float数组如何保存文件?

helium: Re:float数组如何保存文件?
ofs.write((char*)aaa, sizeof(aaa));

是aaa吗?还是aaa[0]?
如果是aaa的话,会不会把数据单元的个数“10”也给保存进去了呢?

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
 楼主| 发表于 2009-5-28 13:16:00 | 显示全部楼层

Re: Re:float数组如何保存文件?

helium: Re:float数组如何保存文件?

#include <fstream>
using namespace std;

int main()
{
        float aaa[10];

        ofstream ofs;
...

抱歉
我试了之后,发现什么都没有保存下来。
文件里面是空的。

4

主题

46

帖子

46

积分

注册会员

Rank: 2

积分
46
发表于 2009-5-28 14:37:00 | 显示全部楼层

Re:float数组如何保存文件?

using namespace std;如果把这一行去掉,下面的代码应该如何变化呢?

把ofstream ofs;
写成std:fstream ofs;

4

主题

46

帖子

46

积分

注册会员

Rank: 2

积分
46
发表于 2009-5-28 14:38:00 | 显示全部楼层

Re:float数组如何保存文件?

文件实际有大小就是存成功了。只不过不能按TXT那种样式看。

4

主题

46

帖子

46

积分

注册会员

Rank: 2

积分
46
发表于 2009-5-28 14:41:00 | 显示全部楼层

Re:float数组如何保存文件?

ofs.write的第一个参数是开始写的内存地址,第二个参数就是向后数的地址长度(就是写到那位结束)。

0

主题

769

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
发表于 2009-5-30 09:44:00 | 显示全部楼层

Re:float数组如何保存文件?

二进制的东西要想查看的话把后缀名改成bin然后用VC就可以打开来看了

1

主题

9

帖子

29

积分

注册会员

Rank: 2

积分
29
发表于 2009-6-2 09:38:00 | 显示全部楼层

Re: Re: Re:float数组如何保存文件?

snhun: Re: Re:float数组如何保存文件?


是aaa吗?还是aaa[0]?
如果是aaa的话,会不会把数据单元的个数“10”也给保存进去了呢?


不能把原数据强制转换成char,这样是把二进制的数据直接以char的形式显示出来了。
直接用 ofstream::<<aaa[n]就可以保存了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-20 04:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表