C#网络编程 自动弹出 另存为 对话框

来源:百度知道 编辑:UC知道 时间:2024/05/29 00:43:42
有如下程序段
Byte[] byRead = new Byte[20480000];
int iRead = stRead.ReceiveFrom(byRead, ref tempRemoteEP);
iRead是我从远端计算机收到的二进制文件流,我想问是的怎么把这个文件流先存到我定义的缓冲区byRead中,然后弹出另存为对话框让我把这个文件保存到接收端计算机,要求是原文件。

你上面的代码已经是保存到缓冲区byRead中了,保存到文件的代码如下:

Byte[] byRead = new Byte[20480000];
int iRead = stRead.ReceiveFrom(byRead, ref tempRemoteEP);
string fileName;
SaveFileDialog sfd = new SaveFileDialog();
if (sfd.ShowDialog() == DialogResult.OK)
{
fileName = sfd.FileName;
System.IO.FileStream fs = new System.IO.FileStream(fileName, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);
fs.Write(byRead, 0, byRead.Length);
fs.Close();
fs.Dispose();
}

学习中。。。

- -!哪有先接收完再提示保存的呢????
应该是:发送文件请求->处理请求->设置保存地址->开始发送文件.
再发送文件之前应该先发送一个文件请求,由接收方选择是否接受,如果接受设置保存地址,然后再开始发送文件.

用循环保存到io
保存完再执行打开保存对话框的语句