![]() |
Como saca la extension?
Hola gente...
Tengo un problema que parece sencillo de resolver pero todavía no pude. Tengo que cargar en un label el nombre de un archivo desde un opendialog anteponiendole otro texto y sacándole la extension (en mi caso un .txt). Utilice el extracfilename para sacarle el path y en el caption del label le asigné lo que voy a anteponer + el extractfilename(opendialog1.filename) pero no puedo quitarle la extensión.. siempre aparece lo que quiero mas '.txt' alguno me puede ayudar? |
Hola,
Prueba a ver con algo más o menos como esto:
Es decir, se trata de usar la función "ChangeFileExtension()", sólo que, en lugar de indicarle una extensión (para cambiarla en el nombre de archivo) le pasamos una cadena vacía, de modo que lo que se consigue es quitar la extensión del nombre del archivo. :) |
probando
Ah buena idea dec... yo pense que había algun evento - atributo lo que fuera que lo haría directamente.
gracias ya estoy probando.. ah por favor lee mi siguiente pregunta please. |
nop
Hola de nuevo dec... utilice tu codigo pero no funciona. No se por qué mi delphi7 for win 32 no toma la sintaxis del ChangeFileExtension, no lo reconoce
|
Hola,
Me parece que esa función está en la unidad "SysUtils". Asegúrate de añadir dicha unidad. ;) |
Sacar ext
Así lo extrae:
procedure TForm1.Label1DblClick(Sender: TObject); begin with OpenDialog1 do begin if Execute then Label1.Caption:= copy(ExtractFileName(FileName), 1, Pos('.',ExtractFileName(FileName))-1); end; end; |
Hola,
Pero eso puede tener el problema de que un archivo incluya un punto (.) en su nombre. No estoy seguro, pero, me parece que la función "ChangeFileExt()" (por cierto, acaso por eso no se encontraba, creo que no es "ChangeFileExtension()", sino "ChangeFileExt()") tiene eso en cuenta. :) |
Este código no serviría en el caso de archivos con nombres como:
iniciar.sesion.php Aquí el nombre de archivo buscado sería iniciar.sesion mientras que el código lo que obtiene es iniciar La función que menciona dec (que creo que se llama ChangeFileExt) ya toma en cuenta este tipo de nombres. Agrego: Veo que se me adelantó dec. Pues eso mismo queria decir aunque lo dije mucho más largo. :) // Saludos |
Es cierto
Tienen razón, se me escapo la tortuga... no pensé en los puntos.
( y no conocia la función ChangeFileExt...) :( |
La franja horaria es GMT +2. Ahora son las 11:47:36. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi