DATASNAP文件传输
来源:互联网 发布:李涛疯狂淘宝 编辑:程序博客网 时间:2024/05/22 17:18
在datasnap服务器里面定义了方法:
procedure UpdateDoc(ItemID : integer; doc : TStream);
客户端
AServerMethods_PublicClient := TServerMethods_PublicClient.Create(DM_Client.SQLConnection1.DBXConnection);
ItemText := TMemoryStream.Create;
try
ItemText.LoadFromFile('E:\private\ksxt\Source\Client\Win32\Debug\blank.rtf');
ItemText.Position := 0;
ShowMessage('ItemText.Size := ' + IntToStr(ItemText.Size));
AServerMethods_PublicClient.UpdateDoc(6, ItemText);
finally
ItemText.Free;
AServerMethods_PublicClient.Free;
end;
但是服务器接收到的doc的size始终为-1,无法得到流。
后使用TJSONArray进行转换,可以实现。
服务器这样写
procedure TServerMethods_Public.UpLoadFile(ADoc: TJSONArray);
var
ADBXJSONTools : TDBXJSONTools;
AData : TMemoryStream;
begin
AData := TMemoryStream.Create;
try
AData := ADBXJSONTools.JSONToStream(ADoc) as TMemoryStream;
ShowMessage(IntToStr(AData.Size));
AData.SaveToFile('123.rtf');
finally
Adata.Free;
end;
end;
客户端这样写
ItemText.LoadFromFile('E:\private\ksxt\Source\Client\Win32\Debug\blank.rtf');
ItemText.Position := 0;
ShowMessage('ItemText.Size := ' + IntToStr(ItemText.Size));
ADoc := ADBXJSONTools.StreamToJSON(ItemText, 0, ItemText.Size);
AServerMethods_PublicClient.UpLoadFile(ADoc);
- DATASNAP文件传输
- DataSnap
- 文件传输
- 文件传输
- 文件传输
- 文件传输
- 文件传输
- 文件传输
- 文件传输
- 文件传输
- 什么是DataSnap
- DataSnap基础
- DataSnap理解
- 什么是DataSnap
- DataSnap 生命周期
- DataSnap概述
- DataSnap基础
- datasnap经典
- 【小蒙淘金】本周要关注的消息面
- [Front-end] 用CSS造个三角形?
- __attribute__
- office 2010激活工具
- CSS分割图片
- DATASNAP文件传输
- 热风枪使用方法
- Android 禁止横竖屏切换
- 2012外贸零售圣诞促销攻略
- 关于C_C++中struct与class的区别
- 建立SQL全文索引提升搜索速度
- Ogre::scene_blend 场景混合
- Java进阶关键方法
- php程序员的基本要求