黑马程序员技术交流社区

标题: SaveFileDialog()的问题 [打印本页]

作者: 王针    时间: 2012-6-1 15:51
标题: SaveFileDialog()的问题
本帖最后由 王针 于 2012-6-1 15:52 编辑

我在做那个聊天室的程序,发现我跟视频里代码一样(就变量命名变了一下而已),可是还是无法弹出文件另存为的窗口,到底是为什么啊?
  1. #region 客户端发送文件
  2. private void btnFileSend_Click(object sender, EventArgs e)
  3. {
  4.     using (FileStream fs = new FileStream(txtFileBrowse.Text, FileMode.Open))
  5.     {
  6.         byte[] fileSave = new byte[1024 * 1024 * 2];
  7.         int length = fs.Read(fileSave, 0, fileSave.Length);//daikaolv
  8.         byte[] fileToSend = new byte[length + 1];
  9.         fileToSend[0] = 1;//1表示文件
  10.         Buffer.BlockCopy(fileSave, 0, fileToSend, 1, length);
  11.         sokConnection.Send(fileToSend);
  12.         ShowMsg("发送了文件:【" + Path.GetFileName(txtFileBrowse.Text) + "】");
  13.     }
  14. }
  15. #endregion
复制代码
  1. void RcvMsg(object sokConnection)
  2. {
  3.     Socket sok = sokConnection as Socket;
  4.     while (true)
  5.     {
  6.         byte[] msgToRcv = new byte[1024 * 1024 * 2];
  7.         int length = sok.Receive(msgToRcv);
  8.         if (0 == msgToRcv[0])
  9.         {
  10.             string strMsg = System.Text.Encoding.Default.GetString(msgToRcv, 1, length - 1);
  11.             ShowMsg("收到信息:【" + strMsg + "】");
  12.         }

  13.         else if(1 == msgToRcv[0])
  14.         {
  15.             SaveFileDialog sfd=new SaveFileDialog();
  16.             if (sfd.ShowDialog() == DialogResult.OK)
  17.             {
  18.                 using (FileStream fs = new FileStream(sfd.FileName, FileMode.Create))
  19.                 {
  20.                     fs.Write(msgToRcv, 1, length - 1);
  21.                     ShowMsg("保存成功:" + sfd.FileName);
  22.                 }
  23.             }
  24.         }
  25.     }
  26. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2