C++ fstream文件读写操作

图片说明图片说明
如图,不用cin>>str输入文件路径的时候完全正确,但用了cin就读取失败。但我需要从键盘输入文件路径,该怎么办啊?

1)你把文件放到没有中文的路径下应该就可以了
2)应该是中文路径的问题

我认为楼上说法不正确。纯CPP编程而且在linux下很少会遇到中文不支持的情况。
显然是路径中有空格导致shell解析成两个参数罢了。

cin遇到空格就会把空格之前的存储到变量中

cin不能读空格,遇到空格就停止读入,可以用freopen。