/// <summary> /// Path Combine /// </summary> /// <param name="path1"></param> /// <param name="path2"></param> /// <returns></returns> public static string PathCombine(string path1, string path2) { if (path2.Length == 0) { return(path1); } if (path1.Length == 0) { return(path2); } string path = string.Empty; char c2 = path2[0]; char c = path1[path1.Length - 1]; #if HUGULA_GSTRING using (GString.Block()) { if (c2 == '\\' && c2 == '/' && c2 == ':') { GString gpath2 = path2; path2 = gpath2.Substring(1).Intern();//path2.Substring(1); } if (c != '\\' && c != '/' && c != ':') { GString sp = GString.Concat(path1, "/"); path = GString.Concat(sp, path2).Intern(); // return path1 + "/" + path2; } else { path = GString.Concat(path1, path2).Intern(); } } #else if (c2 == '\\' && c2 == '/' && c2 == ':') { path2 = path2.Substring(1); } if (c != '\\' && c != '/' && c != ':') { path = path1 + "/" + path2; } else { path = path1 + path2; } #endif return(path); }