Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Cambiar texto o palabras de un archivo dfm (https://www.clubdelphi.com/foros/showthread.php?t=2538)

HombreSigma 28-07-2003 16:00:45

Cambiar texto o palabras de un archivo dfm
 
Deseo reemplazar palabras que un dfm aparecen por otras.

El problema es que cuando abro el archivo con un LoadFromFile en un TStringlist, no me lee sino el comienzo del archivo. Igual me ocurre con el tipo TextFile.

Como hago para leer el texto del archivo de tal manera que pueda reemplazar palabras desde el código de un programa.

Gracias,

nucleox 29-07-2003 06:42:31

Usa TMemorStream:

MS: TMemoryStream.Create;
MS.LoadFromFile('c:\my_dfm_file.dfm');
...
SL: TSTringList.Create;
SL.LoadfromStream(MS);
...
etc...

Si no funciona, creo que en los primeros puntos suspensivos había que copiarlo a un Stream temporal y reiniciar el apuntador.
Avisanos como jala.

Saludos,

andres1569 29-07-2003 10:14:47

Hola:

Posiblemente no puedas leer ese fichero como texto porque esté guardado en formato binario, para convertirlo habría que usar el programa Convert.exe que viene en la carpeta \Bin de Delphi.

También, quizás te interese echar un vistazo a la sección de recursos de esta web, hay un recurso llamado "Internacionalización de aplicaciones" que viene con código fuente, donde el autor accede a ficheros .DFM para cambiar valores.

humexico.org 29-07-2003 23:50:54

//Para leer
with TFileStream.Create('c:\MyDfmFile.DFM', fmOpenRead) do
try
ReadComponentRes(MyForm);
finally
Free;
end;

//Para escribir
with TFileStream.Create('c:\MyDfmFile.DFM', fmCreate) do
try
WriteComponentRes(MyForm.ClassName, MyForm);
finally
Free;
end;

SAludos,


La franja horaria es GMT +2. Ahora son las 04:16:45.

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