What is the advantage of using Path.Combine over concatenating strings with '+'?

后端 未结 5 471
情深已故
情深已故 2020-11-30 10:53

I don\'t quite see the difference.

What could Path.Combine do better than perfectly working string concatenation?

I guess it\'s doing something

5条回答
  •  庸人自扰
    2020-11-30 11:28

    According to this documentation Path.Combine internally performs a string concatenation using +-Operator.

     private static String CombineNoChecks(String path1, String path2) {
            if (path2.Length == 0)
                return path1;
    
            if (path1.Length == 0)
                return path2;
    
            if (IsPathRooted(path2))
                return path2;
    
            char ch = path1[path1.Length - 1];
            if (ch != DirectorySeparatorChar && ch != AltDirectorySeparatorChar && ch != VolumeSeparatorChar) 
                return path1 + DirectorySeparatorCharAsString + path2;
            return path1 + path2;
        }
    

提交回复
热议问题