Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



viernes, 23 de agosto de 2013

Extraer de una ruta, el nombre del archivo, extension y la ruta (sin nombre del archivo)


Extraer de una  ruta: el nombre del archivo, la extensión y la ruta (sin nombre del archivo)

Gambas3 contienes muchas funciones relacionadas con ficheros. ( http://gambasdoc.org/help/comp/gb/filehttp://gambasdoc.org/help/cat/stream )

 Por ejemplo: 

 File.Dir: extrae la ruta
 File.ext: extrae la extension
 File.name: extrae el nombre
 File.basename: extrae el nombre sin la extensión.

He hecho este pequeño ejemplo de su uso:


Código de ejemplo:

Public Sub ButtonExtraer_Click()
LabelDirectorio.text = "Directorio: " & File.Dir(TextBoxFile.text)
LabelExtension.Text = "Extensión: " & File.ext(TextBoxFile.text)
LabelNombre.Text = "Nombre: " & File.name(TextBoxFile.text)
LabelNombreSinExtension.Text = "Nombre sin extension: " & File.basename(TextBoxFile.text)
End

Descarga del ejemplo completo:  enlace

Algunas veces nos complicamos la vida innecesariamente. Yo incluso me he creado una función para extraer los nombres. El problema del uso de funciones realizadas por uno mismo, es que es mucho más lento que si usamos las funciones que tiene incorporada el lenguaje.

Os dejo, por si teneis curiosidad, de como lo hacia yo (es un buen ejemplo de usar un bucle For...Next como cuenta átras):


Public Sub extraedesdebarra(ruta As String) As String
 
  Dim a As Integer
  Dim letra As String
  Dim cadena As String
 
  For a = Len(ruta) To 1 Step -1
    letra = Mid$(ruta, a, 1)
    If letra = "/" Then
      Return cadena
    Else
      cadena = letra & cadena
    Endif
   
  Next
 
End

Saludos

Fuente:
http://gambasdoc.org/help/comp/gb/file/name
http://gambas.8142.n7.nabble.com/How-to-get-all-string-after-last-tp42952.html