| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 645 人关注过本帖
标题:二进制文件流的打开问题
只看楼主 加入收藏
非己莫属
Rank: 2
来 自:河南信阳
等 级:论坛游民
帖 子:13
专家分:14
注 册:2012-4-28
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:5 
二进制文件流的打开问题
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
    fstream data;
    data.open("student",ios::in|ios::out|ios::binary);
    if(!data)
{
     cerr<<"file open error"<<endl;
     return -1;
}
data.close();
return 0;
}
为什么程序运行显示  file open error  ,怎么修改才使它能打开。
搜索更多相关主题的帖子: 二进制 include ios 
2012-05-17 16:00
ZJQLOVELYY
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:105
专家分:166
注 册:2011-8-1
收藏
得分:2 
我觉得你应该去查下data.open("student"中这个student文件的后缀如student.txt或student.dat,,,dat好像是二进制文件的后缀
2012-05-17 22:20
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:2 
ios::in|ios::out|ios::binary 相当于 fopen 的 "r+b",也就是你这个文件必须存在,否则报错
fopen 的 "w+b" 则对应 ios::in|ios::out|ios_base::trunc|ios::binary,你试试看
2012-05-18 08:34
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:2 
程序没问题

如果你的student是个txt文件的话,就用data.open("student.txt",ios::in|ios::out|ios::binary);
文件类型必须写全,除非你建个不带类型的文件叫这个名字
2012-05-18 08:45
非己莫属
Rank: 2
来 自:河南信阳
等 级:论坛游民
帖 子:13
专家分:14
注 册:2012-4-28
收藏
得分:0 
楼上,我又重新加后缀后,不管是"student.txt",还是"student.dat",结果还是file open error呀,为什么呀
2012-05-19 17:48
邋遢鬼
Rank: 2
等 级:论坛游民
帖 子:29
专家分:94
注 册:2011-5-29
收藏
得分:0 
您这种打开方式首先这个文件在exe的目录存在。
2012-05-29 08:44
快速回复:二进制文件流的打开问题
数据加载中...
 
   



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

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