如题:
如何把内存里的一个bmp文件写到ini文件中?

解决方案 »

  1.   

    难道不知道INI是纯文本文件吗?
      

  2.   

    dfm文件里保存图片不是文本方式么?
    比如
            Glyph.Data = {
              76010000424D7601000000000000760000002800000020000000100000000100
              04000000000000010000130B0000130B00001000000000000000000000000000
              800000800000008080008000000080008000808000007F7F7F00BFBFBF000000
              FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00300000000000
              003337777777777777F330FFFFFFFFFFF03337F33F333F3337F330FF0FFF0FFF
              F03337F37F337F3337F330FF0FFF0FFFF03337F37FFF7FFF37F330F00000000F
              F03337F77777777337F330FFF0FFF0FFF03337F337F337F337F330FFF0FFF0FF
              F03337F337FFF7FFF7F330FF00000000F03337F37777777737F330FFFF0FFF0F
              F03337F3337F337F37F330FFFF0FFF0FF03337F33373337337F330FFFFFFFFFF
              F03337F33333333FF7F330FFFFFFFF00003337F33333337777F330FFFFFFFF0F
              F03337FFFFFFFF7F373330999999990F033337777777777F733330FFFFFFFF00
              333337FFFFFFFF77333330000000000333333777777777733333}
      

  3.   

    先调用Bitmap.SaveToStream用Stream.Read逐子节读取,用IntHex转换为16进制字符串你指这个?
      

  4.   

    var
      BinStream: TMemoryStream;
      Buf: Byte;
      Str: string;
    begin
      BinStream := TMemoryStream.Create;
      try
        Bitmap.SaveToStream(BinStream);
        BinStream.Seek(0,soFromBeginning);
        while BinStream.Position<BinStream.Size do
        begin
          BinStream.Read(Buf,1);
          Str:=Str+IntToHex(Buf,2);
        end;
      finally
        BinStream.Free
      end;
    end;
      

  5.   

    用inttohex转为hex了
    怎么把str比如'ff'字符串转为 byte了?
    是有什么函数吗?
      

  6.   

    找到delphi自己的帮助
    unction ComponentToString(Component: TComponent): string;var
      BinStream:TMemoryStream;
      StrStream: TStringStream;
      s: string;
    begin
      BinStream := TMemoryStream.Create;
      try
        StrStream := TStringStream.Create(s);
        try
          BinStream.WriteComponent(Component);
          BinStream.Seek(0, soFromBeginning);
          ObjectBinaryToText(BinStream, StrStream);
          StrStream.Seek(0, soFromBeginning);
          Result:= StrStream.DataString;
        finally
          StrStream.Free;    end;
      finally
        BinStream.Free
      end;
    end;function StringToComponent(Value: string): TComponent;
    var
      StrStream:TStringStream;
      BinStream: TMemoryStream;
    begin
      StrStream := TStringStream.Create(Value);
      try
        BinStream := TMemoryStream.Create;
        try
          ObjectTextToBinary(StrStream, BinStream);
          BinStream.Seek(0, soFromBeginning);
          Result := BinStream.ReadComponent(nil);    finally
          BinStream.Free;
        end;
      finally
        StrStream.Free;
      end;
    end;