鱼C论坛

 找回密码
 立即注册
查看: 2822|回复: 6

C++文件流中关于文件绑定的问题

[复制链接]
发表于 2011-9-22 15:56:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<iostream>
#include<fstream>
#include<string>
#include<vector>
using namespace std;
//函数fileToVector打开文件用于输入
int fileToVector(string fileName,vector<string>& svec)
{
  //创建ifstream对象inFile并绑定到由形参fileName指定的文件夹
  ifstream inFile(fileName.c_str());
  if(!inFile)//打开文件夹失败
     return 1;
  //将文件内容读入到string类型的vector容器
  //每一行存储为该容器的一个元素
  string s;
  while(getline(inFile,s))
     svec.push_back(s);
  inFile.close();//关闭文件夹
  if(inFile.eof())//遇到文件结束符
     return 4;
  if(inFile.bad())//发生系统故障
     return 2;
  if(inFile.fail())//读入数据失败
     return 3;
}
int main()
{
  vector<string> svec;
  string fileName,s;
  //读入文件名
  cout<<"Enter filename:"<<endl;
  cin>>fileName;

  //处理文件
  switch(fileToVector(fileName,svec))
{
   case 1:
      cout<<"error:can not open file:"<<fileName<<endl;
   return -1;
   case 2:
      cout<<"error:system failure"<<endl;
   return -1;
   case 3:
      cout<<"error:read failure "<<endl;
   return -1;
}
//输出vector对象进行检查
cout<<"vector:"<<endl;
for(vector<string>::iterator iter=svec.begin();iter!=svec.end();++iter)
   cout<<*iter<<endl;
return 0;
};



代码编译通过、但是在打开文件的时候总是失败、、求救中…………………
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-9-22 17:15:26 | 显示全部楼层
本帖最后由 weixianlang 于 2011-9-22 17:15 编辑

试试吧string改成char* 或则 const string试试!
不过我试过你的代码,是可以打开文件且运行没有错误!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-9-22 19:07:54 | 显示全部楼层

能把你输入文件名的截图上传一下吗?谢谢、我输入什么文件名都是显示can not open file
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-9-25 09:47:45 | 显示全部楼层
大伙帮下忙 啊、能打开的贴个图上来、谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-10-5 08:44:27 | 显示全部楼层
解决了、这贴怎么结啊?:(
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-10-5 21:27:47 | 显示全部楼层
居然还用到vector,有必要么? LZ在学STL?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-10-6 10:25:17 | 显示全部楼层
yipwing 发表于 2011-10-5 21:27
居然还用到vector,有必要么? LZ在学STL?

嗯、只是练习而已
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-25 16:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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