• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Delphi调用JAVA的WebService上传XML文件(XE10.2+WIN764)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

相关资料:
1.http://blog.csdn.net/luojianfeng/article/details/51219890
2.http://blog.csdn.net/avsuper/article/details/8764165

 

注意事项:

1.生成WSDL文件时,D7可能有的无法生成,用XE版本可以全部生成。

 

返回字节流:

1   function GetByte(AString: string): TByteDynArray;
2   var
3     sByte: TByteDynArray;
4   begin
5     SetLength(sByte, Length(AString));
6     Move(AString[1], sbyte[0], Length(AString));
7     Result := sByte;
8   end;
View Code

 

实例代码:DELPHI以TByteDynArray(Bytes)方式传递图片到JAVA的WEBSERVICE保存

 1 procedure TForm1.btn17Click(Sender: TObject);
 2 var
 3   strm : TMemoryStream;
 4   AFileData: TByteDynArray;
 5   fsize:Integer;
 6 begin
 7     strm := TMemoryStream.Create;
 8     img1.Picture.Graphic.SaveToStream(strm);//把图片转化成内存流
 9     strm.Position:=0;//切记,操作图片前一定要这句,否则错误
10     //把内存流转化成TByteDynArray
11     fsize:=strm.Size;
12     SetLength(AFileData,fsize);
13     strm.Read(AFileData[0],fsize);
14     addResult:=ServiceHello1.addUser_Byte(edt4.Text, AFileData);
15   if (addResult='ok') then
16   begin
17     ShowMessage('添加成功');
18   end;
19 end;
View Code

 

实例代码:在Delphi中怎么通过webservice上传文件,比较

 1 var filename:string;
 2     x:string;
 3   MStream: TMemoryStream;
 4   c: array of TByteDynArray;
 5 begin
 6     HTTPRIO1.HTTPWebNode.UseUTF8InHeader:=true;
 7     HTTPRIO1.WSDLLocation:='http://localhost/grsb/pswService.asmx';
 8     HTTPRIO1.Service:='pswService';
 9     HTTPRIO1.Port:='pswServiceSoap';
10     HTTPDeclare:=HTTPRIO1 as pswServiceSoap;
11  
12   MStream := TMemoryStream.Create;
13   try
14   if OpenDialog1.Execute then
15   begin
16   filename:=OpenDialog1.FileName;
17   MStream.LoadFromFile(filename);
18   MStream.Position := 0;
19   SetLength(c, MStream.size);
20   MStream.ReadBuffer(c[0], MStream.size);
21   x:=HTTPDeclare.zlUploadFile(c[0]);
22   //ShowMessage(x);
23   end;
24   finally
25     MStream.Free;
26   end;
27 end;
View Code

 

实例代码:Delphi调用JAVA的WebService上传XML文件

 1 procedure TForm1.Button2Click(Sender: TObject);
 2 const
 3   sName = 'name';
 4   sPassWord = 'pass';
 5   sDateTime = '2017-11-12 19:41:00';
 6   sCode = '610101';
 7   sCode2 = '060611882';
 8 var
 9   iRTJSServicePortType: RTJSServicePortType;
10   ST:String;
11   sInfo: TByteDynArray;
12   P: PChar;
13   s: string;
14   oStream: TMemoryStream;
15 begin
16   //内存流方法
17   oStream := TMemoryStream.Create;
18   try
19     begin
20       oStream.LoadFromFile('aaa.xml');
21       oStream.Position := 0;
22       SetLength(sInfo, oStream.size);
23 //      MStream.ReadBuffer(sInfo[0], MStream.size);
24       oStream.Read(sInfo[0], oStream.size);
25       iRTJSServicePortType := GetRTJSServicePortType;
26       s := iRTJSServicePortType.uploadInpRegister(sName, sPassWord, sDateTime, sCode, sCode2, sInfo);
27       ShowMessage(s);
28     end;
29   finally
30     oStream.Free;
31   end;
32 end;
View Code

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
delphibutton实现下拉列表发布时间:2022-07-18
下一篇:
delphi窗体属性发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap