ruta obtener ejemplos carpeta archivo c# windows string path escaping

ejemplos - obtener ruta de un archivo c#



Usando/o // para las rutas de carpeta en C# (5)

Al escribir rutas de archivos en C #, encontré que puedo escribir algo como "C: /" o "C: /" y obtener la misma ruta. ¿Cuál se recomienda? Escuché en alguna parte que usar una sola / fue más recomendado que usar / (con / como una secuencia de escape).


Escribo rutas en C # así:

@ "C: / My / Path"

El carácter @ se apaga / escapando.


Esto no es un problema de C #, es un problema de Windows. Las rutas en Windows normalmente se muestran con una barra invertida: C :. En mi opinión, eso es lo que deberías usar en C #. Use @ "C: /" para evitar el manejo especial de los caracteres de backslaash.


Use Path.Combine y no tiene que preocuparse por esa semántica.



Windows admite ambos separadores de ruta, de modo que ambos funcionarán, al menos para las rutas locales (/ no funcionará para las rutas de red). El problema es que no hay un beneficio real de usar el separador de ruta (/) no estándar pero no operativo en Windows, especialmente porque puede usar el literal de cadena textual:

string path = @"C:/" //Look ma, no escape

El único caso en el que podría ver un beneficio de usar el separador / es cuando trabajará solo con rutas relativas y usará el código en Windows y Linux. Luego puede tener el punto "../foo/bar/baz" en el mismo directorio. Pero incluso en este caso es mejor dejar el espacio de nombres System.IO ( Path.DirectorySeparatorChar , Path.Combine ) para encargarse de tales problemas.