//二进制存文件
function SaveFileByByteAr(AByteAr: TByteDynArray; AFileName: string): Boolean; var LBuf: TMemoryStream; begin Result := false; LBuf := TMemoryStream.Create; try LBuf.SetSize(Length(AByteAr)); Move(AByteAr[0], LBuf.memory^, Length(AByteAr)); LBuf.Seek(0, soFromBeginning); LBuf.SaveToFile(AFileName); Result := true; finally LBuf.Free; end; end;
//流转二进制数据 function GetByteArByStream(AStream: TMemoryStream): TByteDynArray; var Len: Integer; begin Len := AStream.Size; SetLength(Result, Len); Move(AStream.Memory^, Result[0], Len); end;