遇到一个问题:用c++访问一个文件,访问的文件名和路径中前一个目录名相同(一个文件夹),则打不开文件。后来我把文件从那个同名文件夹移出,新的路径便能访问成功,这是为啥呀,搜了好多都没找到这样的问题
可能的原因:
(1)原来的文件夹有访问权限,程序没有访问这个目录的权限,导致文件打开失败
(2)路径过长(这个可能性很小,可以测试一下,把文件名和同名目录都改成1,试试能不能打开,或者直接再根目录下建个同名文件夹,把文件拷贝进去,试试能不能打开)
(3)文件名(同名目录)中含有空格或者特殊字符
补充楼上的,还有可能是你第一次访问后没有释放资源,导致下一次不能访问。
你这个问题的报错误的截图呢,你只说了打不开文件,有没有提示原因呢。
访问路径是怎么写的?是相对路径还是绝对路径?
'C:\文件夹\需访问文件.txt'
还是
'需访问文件.txt'
或者
'.\需访问文件.txt'