WEB Service如果下载一个文件
我用Delphi.Net写了个WebService,有一个方法是取得某一个文件,返回值为 TBytes
function TWebService1.GetFileBytes: TBytes;
var
fileName: String;
fs: FileStream;
begin
fileName := Context.Server.MapPath('') + '\file\A.jpg';//文件名。
if &File.Exists(fileName) then
begin
fs := FileStream.Create(fileName, FileMode.Open);
try
fs.Position := 0;
SetLength(Result, fs.get_Length);
fs.Read(Result, 0, fs.get_Length);
finally
fs.Free;
end;
end;
end;
在Delphi中调用时,如下:
procedure TForm1.Button1Click(Sender: TObject);
var
tempStream: TMemoryStream;
A: TByteDynArray;
begin
tempStream := TMemoryStream.Create;
A := GetTWebService1Soap.GetFileBytes;
tempStream.WriteBuffer(A, Length(A));
tempStream.SaveToFile('d:\a.jpg');
end;
但是所生成的文件是不对的。为什么???