C# 使用正确格式时不支持的格式
我收到一个“NotSupportedExection未经用户代码处理-指定的路径格式不受支持”错误,即使我使用了重新查询的字符串C# 使用正确格式时不支持的格式,c#,file,format,C#,File,Format,我收到一个“NotSupportedExection未经用户代码处理-指定的路径格式不受支持”错误,即使我使用了重新查询的字符串 string path = folder + "/" + filename; fileByte = File.ReadAllBytes(path); // error here 你知道问题出在哪里吗 将代码编辑为此 string path = Path.Combine(folder, filename); fileByte = File.ReadAllBytes
string path = folder + "/" + filename;
fileByte = File.ReadAllBytes(path); // error here
你知道问题出在哪里吗
将代码编辑为此
string path = Path.Combine(folder, filename);
fileByte = File.ReadAllBytes(path);
路径为“F:\Web\Opgaver\Skirmer\Hjemmesiden\BETA\Skirmer 17-04-2012\Skirmer 17-04-2012\Billeder\Galleri\F:\Web\Opgaver\Skirmer\Hjemmesiden\BETA\Skirmer 17-04-2012\Billeder\Galleri\2011\Vingsted\DSC_0001.JPG”
错误仍然发生。我看到的是ReadAllBytes重新查询一个字符串,该字符串显示我得到的路径,但仍然显示错误您不应该在路径中使用
/
,因为斜杠在Windows中是无效字符。改为使用来创建它:
string path = Path.Combine(folder, filename);
您不应该在路径中使用
/
,因为斜杠在Windows中是无效字符。改为使用来创建它:
string path = Path.Combine(folder, filename);
path
变量的确切值是多少?
此外,还应使用将路径部分连接到完整路径中
正如File.ReadAllBytes
的文档所述:
NotSupportedException - path is in an invalid format.
path
变量的确切值是多少?
此外,还应使用将路径部分连接到完整路径中
正如File.ReadAllBytes
的文档所述:
NotSupportedException - path is in an invalid format.
您的路径格式不正确:
NotSupportedException path is in an invalid format.
您的路径格式不正确:
NotSupportedException path is in an invalid format.
我认为您需要使用反斜杠,或者更确切地说是使用属性
Path.directorysepartorchar
,该属性返回正确的分隔符,而不考虑文件系统:
string path = folder + Path.DirectorySeparatorChar.ToString() + filename;
或者您可以使用路径。组合方法:
string path = Path.Combine(folder, filename);
我认为您需要使用反斜杠,或者更确切地说是使用属性Path.directorysepartorchar
,该属性返回正确的分隔符,而不考虑文件系统:
string path = folder + Path.DirectorySeparatorChar.ToString() + filename;
或者您可以使用路径。组合方法:
string path = Path.Combine(folder, filename);
如果您在编辑的问题中发布的路径确实是您尝试读取的路径,那么您获得异常的原因是因为路径中有两个冒号。驱动器号重复两次(F:\…F:\…
)
使用该路径的原因完全取决于调用path.Combine()
时文件夹和文件名的内容。文件夹
和文件名
不太可能都以完整路径开头,因为在这种情况下,path.Combine()
将返回filename
作为组合路径。在调用path.Combine()之前,您的文件夹
变量很可能已经包含两个基本路径副本,其中包含两个驱动器号和两个冒号,因此导致不支持执行选项
如果您在编辑的问题中发布的路径确实是您尝试读取的路径,那么您获得异常的原因是因为路径中有两个冒号。驱动器号重复两次(F:\…F:\…
)
使用该路径的原因完全取决于调用path.Combine()
时文件夹和文件名的内容。文件夹
和文件名
不太可能都以完整路径开头,因为在这种情况下,path.Combine()
将返回filename
作为组合路径。在调用path.Combine()之前,您的文件夹
变量很可能已经包含两个基本路径副本,其中包含两个驱动器号和两个冒号,因此导致不支持执行选项
您应该使用Path.Combine
而不是+运算符来组合文件的路径您要读取的文件是什么?您能添加更多详细信息吗?我正在尝试读取文件DSC_0001.JPG。您还想知道哪些其他信息?我认为File.ReadAllBytes不会引发不支持的格式异常
。您的错误应该在其他地方。错误听起来“NotSupportedExeption未经用户代码处理-不支持指定的路径格式”。您应该使用path。Combine
而不是+运算符来组合文件的路径您要读取的文件是什么?您能添加更多详细信息吗?我正在尝试读取文件DSC_0001.JPG。您还想知道哪些其他信息?我认为File.ReadAllBytes不会引发不支持的格式异常
。您的错误应该在其他地方。错误听起来“NotSupportedExeption未被用户代码处理-不支持指定的路径格式”