c++中文件打开失败

c++ 专栏收录该内容
3 篇文章 0 订阅

这是一篇记录我在数据结构算法实验中遇到的关于文件打开问题的总结

在最近的学习过程中,关于文件的操作我遇到了一些问题——用VS编写代码对文件进行操作时,无法正常的打开文件。这样的问题我遇到了几次,一开始总是找不到解决方案,网上的解决办法也都不一样,跟自己的实际情况不太相同,所以无法很好的解决问题。所以,在经过自己的查找资料以及和同学谈论后,我终于找到了有效的解决方案,在此做一次学习总结。

首先先放一张出问题后的运行截图
在这里插入图片描述
对应的代码:

ifstream vexFile("Vex.txt");
	if (!vexFile) {
		cout << "文件打开失败!" << endl;
	}
 //按行读取edge.txt文件内容
	FILE *edgeFile;
	edgeFile = fopen("Edge.txt", "r");
	if (!edgeFile) {
		cout << "文件打开失败!" << endl;
	}

可以从代码中看到,此时的文件地址是相对地址
我寻思着文件打不开,第一个原因可能就是文件路径不对,找不到相关文件,所以我将路径改成了绝对路径:

ifstream vexFile("E:\\Vex.txt");
	if (!vexFile) {
		cout << "文件打开失败!" << endl;
	}
 //按行读取edge.txt文件内容
	FILE *edgeFile;
	edgeFile = fopen("E:\\Edge.txt", "r");
	if (!edgeFile) {
		cout << "文件打开失败!" << endl;
	}

果然,文件成功打开,运行截图如下:
在这里插入图片描述
所以,果然是我的路径不对( ̄_ ̄ )
问过同学后,发现其实也可以不改成绝对路径,只是我的文件放置的位置不对。
在用VS写代码时,如果不想用绝对路径,那么就要把文件放置在与sln文件同一级的同工程名的文件里,如下图:
在这里插入图片描述
也就是GraphCPro文件夹中
在这里插入图片描述
然后程序就运行成功了d=====( ̄▽ ̄*)b
总结一下:文件打开失败,首先可以尝试一下绝对路径
用VS进行编程的将文件放入如上图所展示的位置

有不足之处,还请网友们指出,感谢!( ̄︶ ̄*))

  • 10
    点赞
  • 2
    评论
  • 15
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值