吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2425|回复: 6
收起左侧

[讨论] 使用VSCode C++语言编程出现的ifstream读入文件失败问题的解决

[复制链接]
cmccml 发表于 2022-3-16 17:32
C++萌新第一次使用ifstream读入文件,却始终出现了读取失败的状况。(反复确认了相对路径没有写错,文件名也没错的)

最后经过多次的尝试和资料的搜集,才发现似乎用相对路径是不行的(并不知道为什么,如果有大佬能解释就好了{:1_889:}  ),即便代码的cpp文件和希望读取的txt文件放在同一个文件夹直接读取也不行。
于是我将其改成了绝对路径,终于可以正常读取,另外还需要注意的就是路径中不能出现中文,必须是全英才可以。

本人用的是VS Code,版本是1.65.2(应该是)

因为自己被这个问题卡了很久,所以发这个帖子希望能帮助到其他人,同时也很好奇为什么用相对路径就不行呢

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| cmccml 发表于 2022-3-17 12:04
本帖最后由 cmccml 于 2022-3-17 12:07 编辑
michaelgao 发表于 2022-3-17 10:46
从您的描述看,没看出问题。如果方便的话,您把项目上传,我们一起看看。

啊!我找到问题了!!!
只要到lanch.json文件中的configuration中将cwd语句改成这样子就可以正常使用相对路径了!!!
感谢   VsCode相对路径读取问题_菜鸭子的博客-CSDN博客_vscode相对路径   这篇博客

也超级感谢您能认真回答我的问题!!  萌新感到超级温暖!
image.png

也希望能帮到其他人
michaelgao 发表于 2022-3-17 09:57
本帖最后由 michaelgao 于 2022-3-17 10:01 编辑

1》无论是相对目录,还是绝对目录,都一样可以正常读取文件内容的。有图有真相:
d:\001.png

2》您设置项目的工作目录为当前目录,其他相对路径都以此目录为基准的。
d:\002.png
上图设置xxx.vcxproj项目文件所在目录为当前目录,下面范例代码测试文本文件也放在该目录下。

您应该是工作路径、相对路径的真实值和期望值不一致了。
希望对您有帮助。

范例代码

范例代码

设置工作目录

设置工作目录
 楼主| cmccml 发表于 2022-3-17 10:10
michaelgao 发表于 2022-3-17 09:57
1》无论是相对目录,还是绝对目录,都一样可以正常读取文件内容的。有图有真相:

嗯嗯,谢谢大佬!
 楼主| cmccml 发表于 2022-3-17 10:31
michaelgao 发表于 2022-3-17 09:57
1》无论是相对目录,还是绝对目录,都一样可以正常读取文件内容的。有图有真相:

image.png
如图 ,请问我把该Harry.cpp文件放在的这个名为C++的文件夹中,难道相对路径不是以该目录为基准嘛。我将这些JK Rowling 有关的文本文件同样放在C++文件夹中。


image.png
但如图所示,我以该C++文件夹为基准的相对路径来读取不到文件,想知道错误出在哪里
michaelgao 发表于 2022-3-17 10:46
cmccml 发表于 2022-3-17 10:31
如图 ,请问我把该Harry.cpp文件放在的这个名为C++的文件夹中,难道相对路径不是以该目录为基准嘛。我 ...

从您的描述看,没看出问题。如果方便的话,您把项目上传,我们一起看看。
 楼主| cmccml 发表于 2022-3-17 11:22
michaelgao 发表于 2022-3-17 10:46
从您的描述看,没看出问题。如果方便的话,您把项目上传,我们一起看看。

抱歉,我是新用户,想问一下我是应该以压缩包形式上传吗,可是附件似乎也不能上传压缩包类型的文件
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 16:53

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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