Fórum LoadFromStream não funciona #306809
27/12/2005
0
var
ms: TMemoryStream;
begin
ms := TMemoryStream.Create;
DBGrid1.Columns.SaveToStream( ms );
teste.Position := 0;
Memo1.Lines.Clear;
[b:ee7b7a08d6]Memo1.Lines.LoadFromStream( ms );[/b:ee7b7a08d6]
ms.free;
end;
Quando fiz um DBGrid1.Columns.SaveToFile( ´c:\teste.ini´ ), ele me colocou tudo certo dentro do arquivo, mas na hora de efetuar o [b:ee7b7a08d6]Memo1.Lines.LoadFromFile( ´C:\teste.ini´ );[/b:ee7b7a08d6] ele me retorna apenas alguns caracteres, pelo que pude perceber, ele me retorna até o primeiro espaço.
Exemplo:
[b:ee7b7a08d6]Conteúdo do arquivo c:\teste.ini[/b:ee7b7a08d6]
Como faço para retornar todo o conteúdo para um memo, ou RichEdit, ou stringlist, qualquer variável texto ?
Lehapan
Curtir tópico
+ 0Posts
27/12/2005
Lehapan
Gostei + 0
27/12/2005
Sourcecode
[]´s
Gostei + 0
28/12/2005
Lehapan
uses IniFiles, Classes;
var
StrStm: TStringStream;
S: string;
Caracter: integer;
MemIni: TMemIniFile;
begin
StrStm := TStringStream.Create( S );
DbGrid.Columns.SaveToStream( StrStm );
StrStm.Seek( 0, soFromBeginning );
{ Ele te retorna como uma string os dados das colunas de um DBGrid }
S := StrStm.ReadString( StrStm.Size );
Caracter := 123;
while Pos( chr( Caracter ), S ) > 0 do
begin
inc( Caracter );
end;
{ Substitui todos o chr(0) da string S pelo chr(Caracter) }
S := Substitui( S, chr( 0 ), chr( Caracter ) );
MemIni := TMemIniFile.Create(´´);
MemIni.WriteString( ´DbGrid´, ´Colunas´, S );
MemIni.WriteString( ´DbGrid´, ´Caracter´, chr( Caracter ) );
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)