这很奇怪。该文件已存在,但在使用File.Exist(路径)时仍然出现错误:
string path = @"D:\Design\SVG\black_circle.svg";
我也尝试过Python中的等效函数:
os.path.isfile(r"D:\Design\SVG\black_circle.svg")
//output -- True
此屏幕截图显示了文件系统。
是什么让File.Exists()
返回false?
答案 0 :(得分:3)
如果我使用从Windows资源管理器直接复制的路径,C#将无法读取该文件,而IndexOf(':')
将为2,但如果在Visual Studio中写入路径,则会工作正常,IndexOf(':')
将为1。
string copiedPath = @"?D:\Design\SVG\black_circle.svg";
int a = copiedPath.IndexOf(':') //output 2
string hardCodedpath = @"D:\Design\SVG\black_circle.svg";
int i = hardCodedpath .IndexOf(':'); //output 1