public static IDirectoryPath AsDirectoryPath(this string pathString) { RoutingBase routingBase = Path.IsPathRooted(pathString) ? AbsoluteRoute.Instance : RelativeRoute.Instance; // パス末尾にスラッシュが無ければ、それを付与したものをディレクトリパスとして扱う if (!Path.EndsInDirectorySeparator(pathString)) { pathString += Path.DirectorySeparatorChar; } return(routingBase.GetDirectoryPath(pathString)); }
internal static IFilePath AsFilePath(this string pathString, RoutingBase routingBase) { return(AsFilePath(pathString, () => routingBase.GetFilePath(pathString), ext => routingBase.GetFilePathWithExtension(pathString, ext))); }