我在某个Class1中有这个功能:
public void function1(String path){
this.excel = new Application();
this.wbooks = excel.Workbooks;
this.wb = wbooks.Open(path);
String rootPath = wb.Path+"//..//..//";
String nPath = String.Format("{0}//Loads//{1}//{2}",rootPath,name1,name2);
String outputDir = String.Format("{0}//Input//{1}//{2}", rootPath, name1, name2);
String erroDir = String.Format("{0}//Erro//{1}//{2}", rootPath, name1, name2);
for(int i = 0; i < size; i++){
String[] array2 = File.ReadAllLines(String.Format("{0}//{1}_{2}.txt", nPath, name1, i.ToString()));
//code
Directory.CreateDirectory(erroDir);
File.WriteAllLines(String.Format("{0}//erro_{1}_{2}.txt", erroDir, name1, i.ToString()), array);
Directory.CreateDirectory(outputDir);
File.WriteAllLines(String.Format("{0}//output_{1}.txt", outputDir, name2), array);
}
}
这个函数来自一个类,在main函数中就像这样调用:
String path = "C:\\Users\\myUsername\\Desktop\\myFolder\\";
Class1 temp = new Class1();
temp.function1(path);
为什么功能中的路径有效?不应该路径“\\”而不是“//”。
答案 0 :(得分:2)
为什么函数中的路径有效?不应该将路径设为“\”而不是“//”。
是的,他们应该。但Windows是“聪明的”。它试图确定你实际要问的内容,在这种情况下,如果文件路径以C:
开头,例如,它'知道'它是本地文件路径,因此它会尝试解释它。
请注意,并非所有程序都是智能的。例如,一些.NET构建工具(不是C#本身)因处理此类文件路径的一些错误而闻名。