• 根据一个绝对路径获取相对路径的方法


       1:  static void Main(string[] args)
       2:  {
       3:      string a = @"c:\a\b\c\d";
       4:      string b = @"c:\a\b\e\f\1.txt";
       5:      int n = 0;
       6:      Console.WriteLine(GetRelativePaths(b, a));
       7:      Console.ReadKey();
       8:  }
       9:   
      10:  public static string GetRelativePaths(string path, string current)
      11:  {
      12:      string a = current.ToLower();
      13:      string b = path.ToLower();
      14:      int i = 0;
      15:      for (; i < Math.Min(a.Length,b.Length); i++)
      16:      {
      17:          if (a[i] != b[i]) break;
      18:      }
      19:      string cur = Regex.Replace(a.Substring(i - 1), @"\\?[a-zA-Z]+:?", @"..\");
      20:      return (cur + path.Substring(i + 1)).Replace(@"\\", @"\");
      21:  }

    输出:

    ..\..\f\1.txt
  • 相关阅读:
    POJ 2112 Optimal Milking (Floyd+二分+最大流)
    hdu5444 Elven Postman
    hdu5442 Favorite Donut
    hdu5437 Alisha’s Party
    hdu5433 Xiao Ming climbing
    hdu5432 Pyramid Split
    Codeforces Round #316 (Div. 2) C. Replacement
    hdu5396 Expression
    hdu3506 Monkey Party
    hdu3516 Tree Construction
  • 原文地址:https://www.cnblogs.com/ricksun/p/2658184.html
Copyright © 2020-2023  润新知