webservice 怎么传输文件

webservice 怎么传输文件,第1张

服务端写一个专门针对文件的方法,客户端参数类型可以是Byte/DataHandler等类型,在服务端进行解析参数写入文件即可。最重要的是要设置WebService为可传递附件,默认的WebService仅仅支持一般数据类型的传递。

在WebService服务器端, 把文件变成字节数组. 然后返雀察回顷喊茄该字节数渗亮组, 比如这样:

// 打开文件流, 要求目标文件必须存在, 否则将抛出IOException异常.

FileStream fs = new FileStream("文件路径", FileMode.Open, FileAccess.Read)

// 初始化将要存放文件内容的缓冲区

byte[] buffer = new byte[fs.Length]

// 将文件内容读入缓冲区中

fs.Read(buffer, 0, buffer.Length)

// 关闭文件流

fs.close()

// 在WebService方法中, 返回该字节数组.

return buffer

这样之后, 文件就以字节流的形式被传递, 那么客户端应该这样:

FileStream fs = new FileStream("文件路径", FileMode.Create, FileAccess.Write)

byte[] buffer = null    

// 调用WebService后应该获得一个字节数组, 比如调用上面的代码获得

// ... 省略调用代码

// ...

if(null != buffer) {

    fs.Write(buffer, 0, buffer.Length)

    fs.Flush()    //这句很重要, 清空缓冲区

}

fs.Close()

Good Luck with u

在服务端拿答写一个专门针对文件的方法猛清,客户端参数类型可以是Byte/DataHandler等类型,在服务端进行解析消知慧参数写入文件即可。最重要的是要设置WebService为可传递附件,默认的WebService仅仅支持一般数据类型的传递。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12290810.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存