Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在路径中处理文件名中的空格_C#_C# 4.0_Choetl - Fatal编程技术网

C# 如何在路径中处理文件名中的空格

C# 如何在路径中处理文件名中的空格,c#,c#-4.0,choetl,C#,C# 4.0,Choetl,我想访问以下文件: new ChoJSONReader(@"0_Target Finds.json") 但我尝试了所有可能的方法来访问,比如: new ChoJSONReader("'0_Target Finds.json'") 对我来说什么都不管用。。有人知道吗?请在这方面帮助我。问题是,ChoJSONReader以一种特殊的方式处理相关文件名。我假设它使用程序集所在的文件夹,而不是使用当前工作目录。您可以通过提供构造函数的完整路径来修复错误 如果您确定文件位于当前目录中,则可以获得如下完

我想访问以下文件:

new ChoJSONReader(@"0_Target Finds.json")
但我尝试了所有可能的方法来访问,比如:

new ChoJSONReader("'0_Target Finds.json'")

对我来说什么都不管用。。有人知道吗?请在这方面帮助我。

问题是,
ChoJSONReader
以一种特殊的方式处理相关文件名。我假设它使用程序集所在的文件夹,而不是使用当前工作目录。您可以通过提供构造函数的完整路径来修复错误

如果您确定文件位于当前目录中,则可以获得如下完整路径:

var fullPath = System.IO.Path.GetFullPath("0_Target Finds.json");
new ChoJSONReader(fullPath)

如果知道文件所在的目录,最好使用特定路径,而不要依赖当前工作目录。您可以使用
环境.GetFolderPath
系统.IO.Path
类的方法来组装路径。

问题在于
ChoJSONReader
以特殊方式处理相关文件名。我假设它使用程序集所在的文件夹,而不是使用当前工作目录。您可以通过提供构造函数的完整路径来修复错误

如果您确定文件位于当前目录中,则可以获得如下完整路径:

var fullPath = System.IO.Path.GetFullPath("0_Target Finds.json");
new ChoJSONReader(fullPath)

如果知道文件所在的目录,最好使用特定路径,而不要依赖当前工作目录。可以使用
Environment.GetFolderPath
System.IO.Path
类的方法来组装路径。

空间不应出现问题。但是,在不指定路径的情况下,该文件应在当前目录中可用(默认情况下,exe文件存储在其中的目录)。尝试使用绝对路径作为参数。检查此项或@SunithaBist是否出现异常或根本没有发生任何情况?您可以尝试调用
System.IO.File.Exists(“0_Target Finds.json”)
并检查其返回值。如果返回true且组件仍然没有打开文件,则问题可能出在组件中。@FatalJamòn没问题:-)您完全正确,存在一些复杂的情况。顺便说一句:我肯定你在噩梦中发现了,但是你可以使用文件对话框上的
RestoreDirectory
属性在对话框关闭后重置目录。不幸的是,默认值为false…从那时起,我一直使用绝对文件路径,使用AppDomain.CurrentDomain.GetBaseDirectory路径进行所有exe搜索。除非由我自己的代码明确设置,否则我很少依赖当前目录。空间应该不是问题。但是,在不指定路径的情况下,该文件应在当前目录中可用(默认情况下,exe文件存储在其中的目录)。尝试使用绝对路径作为参数。检查此项或@SunithaBist是否出现异常或根本没有发生任何情况?您可以尝试调用
System.IO.File.Exists(“0_Target Finds.json”)
并检查其返回值。如果返回true且组件仍然没有打开文件,则问题可能出在组件中。@FatalJamòn没问题:-)您完全正确,存在一些复杂的情况。顺便说一句:我肯定你在噩梦中发现了,但是你可以使用文件对话框上的
RestoreDirectory
属性在对话框关闭后重置目录。不幸的是,默认值为false…从那时起,我一直使用绝对文件路径,使用AppDomain.CurrentDomain.GetBaseDirectory路径进行所有exe搜索。除非由我自己的代码明确设置,否则我很少依赖当前目录。