Si es precisamente es un archivo .ini, �sea un archivo de texto que le pongo .ini porque lo uso para configuraci�n general.
Muchas gracias ver� como se hace con TIniFile.
Hasta ahora estaba tratando de convertir lo que tengo de VB6 para hacer dicho trabajo, ya hab�a convertido 2 procedimientos, aunque todav�a no los he probado:
function Tdtmmp.headiniformated(head: string): string;
begin
//Formatea un head para usarse
head := trim(head);
if leftstr(head, 1) '[' then head := '[' + head;
if rightstr(head, 1) ']' then head := head + ']';
result := head;
end;
procedure Tdtmmp.inicopyfile(fileini: string; numlinereem: integer;
valuereem: string; reemplace: boolean);
var
inti: integer;
strlinea, strfiledest: string;
nexfileini: TextFile;
oldfileini: TextFile;
begin
//Vac�a un archivo ini al otro
//numlinereem = N�mero de l�nea a reemplazar
//valuereem = Valor por el que se reemplaza
//reemplace = si es verdadero entonces se reemplaza la l�nea, si es falso
entonces se inserta la l�nea
inti := 0;
AssignFile (oldfileini, fileini);
Append (oldfileini); // abre un archivo existente
strfiledest := fileini + '2';
AssignFile (nexfileini, strfiledest);
Rewrite (nexfileini); // crear uno nuevo
while not eof(oldfileini) do
begin
inti := inti + 1;
readln(oldfileini, strlinea);
if inti = numlinereem then
begin
writeln(nexfileini, valuereem);
if not reemplace then writeln(nexfileini, strlinea);
end
else
writeln(nexfileini, strlinea);
end;
if inti < numlinereem then //significa que estaba vac�o o que no exist�a
writeln(nexfileini, valuereem);
closefile(oldfileini);
deletefile(fileini);
rename(nexfileini, fileini);
closefile(nexfileini);
end;
Saludos cordiales
=========
�� ISMAEL ��
=========
Earlier message 33 lines
----- Mensaje original -----
De: "JoshyFun" <joshyfun en gmail.com>
Para: "Spanish version of Lazarus List"
<lazarus-es en lists.lazarus.freepascal.org>
Enviado: martes, 17 de noviembre de 2009 04:22
Asunto: Re: [Lazarus-es] Como leer y escribir archivos de textos
Hello Ismael,
Tuesday, November 17, 2009, 10:31:52 PM, you wrote:
ILDG> Estoy tratando de leer y escribir un archivo de texto con
ILDG> TFileStream pero no he podido encontrar la forma:
ILDG> La estructura ser�a m�s o menos as�:
ILDG> [Datos]
ILDG> conexion=1
ILDG> seridor=192.168.0.1
ILDG> puerto=3050
ILDG> bd=D:\Datos\
[...]
ILDG> GRACIAS por la ayuda que me puedan brindar.
El archivo tiene toda la pinta de tener un formato .INI file, y para
ello te ser�a m�s c�modo usar el TIniFile en vez de TFileStream. A�ade
TIniFile al "uses" y ya dispones de TIniFile.
--
Best regards,
JoshyFun