Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   cambiar extension (https://www.clubdelphi.com/foros/showthread.php?t=41604)

paulodb 20-03-2007 19:49:53

cambiar extension
 
hola gente alguno sabe como poder cambiar la extension de un archivo mediante codigo delphi?

gracias

dec 20-03-2007 19:59:52

Hola,

Puedes utilizar la función de la unidad "SysUtils" "ChangeFileExt" para obtener la ruta de un archivo "con otra extensión". Si lo que quieres es que los cambios surtan efecto en el propio archivo deberás valerte de la función "RenameFile" combinándola con la anterior, es decir, algo más o menos como esto:

Código Delphi [-]
const
  archivo = 'C:\archivo.bmp';
begin
  RenameFile(archivo, ChangeFileExt(archivo, '.jpg');
end;

delphi.com.ar 20-03-2007 20:03:08

Si tienes el nombre del archivo en un string, y quieres cambiarle la extención puedes utilizar la función ChangeFileExt definida en la unit SysUtils, y si este archivo es un archivo del FileSystem puedes utilizar RenameFile para cambiar el nombre del archivo:
Código Delphi [-]
var
  AFileName: TFileName;
begin
  AFileName := 'c:\MiArchivo.txt';
  Win32Check(RenameFile(AFileName, ChangeFileExt(AFileName, '.dat')));

Saludos!

roman 20-03-2007 20:09:54

Esos dedos Federico, hay que aceitarlos un poco :D :p

// Saludos

dec 20-03-2007 20:14:31

Hola,

Cita:

Empezado por Román
Esos dedos Federico, hay que aceitarlos un poco

No, no; No es que esté lento Federico sino que yo soy como el rayo y no tengo abuela. :D :D :D

delphi.com.ar 20-03-2007 20:48:25

Cita:

Empezado por roman
Esos dedos Federico, hay que aceitarlos un poco :D :p

Estoy totalmente fuera de forma!! :D...
Creo que mis dos últimas participaciones en hilos nuevos fueron calcadas :D

paulodb 20-03-2007 20:57:44

hola chicos
 
La verdad que esta muy bueno para cambiar de extencion pero fijandome bien necesito cambiar por ejemplo un tipo de archivo dbf 4 (dbase IV) que es .dbf a otro tipo dbf 3 (dbase III) que tambien es .dbf. Les agradezco al respuesta
Saludos

egostar 20-03-2007 22:01:30

oops, Creo que esto da al traste con todo lo anteriormente expuesto.

A esto le llamo yo una pequeña precisión a un problema.:D:confused::eek::rolleyes::cool::mad:


Saludos

paulodb 21-03-2007 17:35:29

ya lo solucione...
 
Luego de programar horas y horas y buscar informacion me di cuenta que si reseteo el byte 28 del archivo dbf evitare que salga el error "index not found" (que me indica que los indices del archivo estan estropeados)
Para ello cree una funcion a la cual se le pasa el path o direccion de donde se encuentra la tabla DBF y luego resetea el byte 28.
Buenisismo!:)

Código Delphi [-]
procedure PasarDBF3(DireccionTabla : string);
var sArchivo: String ;
    F: File of byte;
const Value: Byte = 0;
begin
sArchivo := DireccionTabla;
AssignFile(F, sArchivo);
Reset( F ) ;
Seek(F, 28);
Write(F, Value);
CloseFile( F );
end;


La franja horaria es GMT +2. Ahora son las 00:19:42.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi