Estoy tratando de escribir una función miembro estática en C# o encontrar una en .NET Framework que volverá a mayúsculas una ruta de archivo a lo que especifica el sistema de archivos.C# Filepath Recasing
Ejemplo:
string filepath = @"C:\temp.txt";
filepath = FileUtility.RecaseFilepath(filepath);
// filepath = C:\Temp.TXT
// Where the real fully qualified filepath in the NTFS volume is C:\Temp.TXT
he intentado el siguiente código de abajo y muchas variantes de la misma y todavía no funciona. Sé que Windows no distingue entre mayúsculas y minúsculas en general, pero necesito pasar estas rutas de acceso de archivos a ClearCase, que considera el alojamiento de la ruta de archivos, ya que es una aplicación de Unix y Windows.
public static string GetProperFilePathCapitalization(string filepath)
{
string result = "";
try
{
result = Path.GetFullPath(filepath);
DirectoryInfo dir = new DirectoryInfo(Path.GetDirectoryName(result));
FileInfo[] fi = dir.GetFiles(Path.GetFileName(result));
if (fi.Length > 0)
{
result = fi[0].FullName;
}
}
catch (Exception)
{
result = filepath;
}
return result;
}
Debido a ClearCase. Ya lo dije en la pregunta. –