- First Update
This commit is contained in:
57
CommonLibrary/Extensions.cs
Normal file
57
CommonLibrary/Extensions.cs
Normal file
@@ -0,0 +1,57 @@
|
||||
using System.Text;
|
||||
|
||||
namespace CommonLibrary
|
||||
{
|
||||
public static class Extensions
|
||||
{
|
||||
public static string PathCombineL(params string[] paths)
|
||||
{
|
||||
string directorySeparatorChar = System.IO.Path.AltDirectorySeparatorChar.ToString();
|
||||
return PathCombine(directorySeparatorChar, paths).Replace("\\", "/");
|
||||
}
|
||||
|
||||
public static string PathCombineW(params string[] paths)
|
||||
{
|
||||
string directorySeparatorChar = System.IO.Path.DirectorySeparatorChar.ToString();
|
||||
return PathCombine(directorySeparatorChar, paths).Replace("/", "\\");
|
||||
}
|
||||
|
||||
private static string PathCombine(string directorySeparator, params string[] paths)
|
||||
{
|
||||
if (paths.Length == 0)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
StringBuilder path = new StringBuilder();
|
||||
path.Append(paths[0]);
|
||||
for (int i = 1; i < paths.Length; i++)
|
||||
{
|
||||
if (path.ToString().Substring(path.Length - 1, 1) == directorySeparator)
|
||||
{
|
||||
if (paths[i].Substring(0, 1) == directorySeparator)
|
||||
{
|
||||
path.Append(paths[i].Substring(1, paths[i].Length - 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
path.Append(paths[i]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (paths[i].Substring(0, 1) == directorySeparator)
|
||||
{
|
||||
path.Append(paths[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
path.Append(directorySeparator);
|
||||
path.Append(paths[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return path.ToString();
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user