Necesito obtener la última parte del directorio actual, por ejemplo /Users/smcho/filegen_from_directory/AIRPassthrough
, necesito obtener AIRPassthrough
.
Con python, puedo obtenerlo con este código.
import os.path
path = "/Users/smcho/filegen_from_directory/AIRPassthrough"
print os.path.split(path)[-1]
O
print os.path.basename(path)
¿Cómo puedo hacer lo mismo con C #?
ADICIONAL
Con la ayuda de los que respondieron, encontré lo que necesitaba.
using System.Linq;
string fullPath = Path.GetFullPath(fullPath).TrimEnd(Path.DirectorySeparatorChar);
string projectName = fullPath.Split(Path.DirectorySeparatorChar).Last();
o
string fullPath = Path.GetFullPath(fullPath).TrimEnd(Path.DirectorySeparatorChar);
string projectName = Path.GetFileName(fullPath);
os.path.basename(path)
.Respuestas:
Usted está buscando
Path.GetFileName
.Tenga en cuenta que esto no funcionará si la ruta termina en a
\
.fuente
Path.GetFileName("/Users/smcho/filegen_from_directory/AIRPassthrough")
en LINQPad si no me crees.Path
clase maneja ambos separadores.Tu podrías intentar:
fuente
Bueno, para responder exactamente el título de tu pregunta :-)
fuente
Esta es una respuesta ligeramente diferente, dependiendo de lo que tenga. Si tiene una lista de archivos y necesita obtener el nombre del último directorio en el que se encuentra el archivo, puede hacer esto:
Esto devolverá "2938_parentid"
fuente
en lugar de usar el '/' para que la llamada se divida, mejor usar el
Path.DirectorySeparatorChar
:al igual que:
fuente
Esto funciona si la ruta contiene separadores de barra diagonal o separadores de barra diagonal inversa.
fuente
.TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar)
también funciona.Prueba esto:
El código puede estar apagado (no lo he probado) pero la idea debería funcionar
fuente
Esto funciona perfectamente bien conmigo :)
fuente
Puedes probar el siguiente código:
Path.GetFileName(userpath)
fuente
También puedes usar la clase Uri.
Es posible que prefiera utilizar esta clase si desea obtener otro segmento o si desea hacer lo mismo con una dirección web.
fuente