您现在的位置是:首页
>
电脑有发送无接收数据 vs.net打造发送与接收端程序
v . et打造发送与接收端程序 本篇文章的主要开发环境是Vi ual Studio Vi ual Studio系列产品一直以来都提供了强大的控件功能 然而我们利用这些控件可以编写出功能强大的应用
vs.net打造发送与接收端程序
本篇文章的主要开发环境是Visual Studio Visual Studio系列产品一直以来都提供了强大的控件功能 然而我们利用这些控件可以编写出功能强大的应用程序 本文主要利用微软的最新 net开发工具为大家展示一个发送与接收端程序的开发过程 让大家对Socket更加熟悉 很适合 net开发工具的初学者 具有一定的实用价值 打开 Visual Studio 在文件 (File) 菜单上 单击新建项目 (New Project) 在新建项目 (New Project) 对话框的模板 (Templates) 窗格中 单击 Windows 应用程序(Windows Application) 单击确定 (OK) 如图
我们需要创建两个窗体 一个是发送端(Form 窗体) 另外一个是接收端(Form 窗体) 详细操作步骤如下 选择Form 窗体 在Form 窗体中添加如下控件 Label Label Label Button 控件 OpenFileDialog 控件 控件属性设置如下 Label 属性Text 已经发送的文件长度: Label 属性Text 为空 Label 属性Text 字节数 Button 属性Text 发送文件 最终界面效果如下 选择Form 窗体 在Form 窗体中添加如下控件 Label Label TextBox Button 控件 OpenFileDialog 控件 SaveFileDialog 控件 控件属性设置如下 Label 属性Text 已接收的文件 Label 属性Text 为空 TextBox 属性Multiline 属性ScrollBars True Both Button 属性Text 接收文件并保存 最终界面效果如下 好了界面工作已经完成了 接下来我们需要输入代码了 选择Form 窗体 进入代码编辑器中
首先我们需要进行声明 Imports System Net Sockets Imports System Net Imports System IO Public Class Form Inherits System Windows Forms Form 进入Button _Click事件中 Private Sub Button _Click(ByVal sender As System Object ByVal e As System EventArgs) Handles Button Click Dim mysocket As New Socket(AddressFamily InterNeork SocketType Stream ProtocolType Tcp) 声明socket Dim myipendponit As New IPEndPoint(IPAddress Parse( ) ) 建立一个终结点 OpenFileDialog Filter = 文本文件( txt) * txt OpenFileDialog InitialDirectory = c: If OpenFileDialog ShowDialog() = DialogResult OK Then Dim fs As New IO FileStream(OpenFileDialog FileName _ IO FileMode OpenOrCreate IO FileAccess Read) 你所要传输的文件 Dim ssize(fs Length ) As Byte Dim br As New BinaryReader(fs) 处理要传输的文件 br Read(ssize ssize Length ) mysocket Connect(myipendponit) 连接到远程计算机 mysocket Send(ssize) 发送文件 Label Text = fs Length() fs Close() mysocket Shutdown(Net Sockets SocketShutdown Send) 关闭已发送连接 mysocket Close() 关闭本机socket End If End Sub 进入Form _Load事件中 Private Sub Form _Load(ByVal sender As System Object ByVal e As System EventArgs) Handles MyBase Load Dim window As New Form () window Show() End Sub 选择Form 窗体 进入代码编辑器中 首先我们需要进行声明 Imports System Net Sockets Imports System Net Imports System IO Public Class Form Inherits System Windows Forms Form Dim receivesocket As New Socket(AddressFamily InterNeork SocketType Stream ProtocolType Tcp) 进入Form _Load事件中 Private Sub Form _Load(ByVal sender As System Object ByVal e As System EventArgs) Handles MyBase Load Dim hostipendpoint As New IPEndPoint(IPAddress Parse( ) ) receivesocket Bind(hostipendpoint) 建立远程计算机的的socket receivesocket Listen( ) 监听socket End Sub 进入Button _Click事件中 Private Sub Button _Click(ByVal sender As System Object ByVal e As System EventArgs) Handles Button Click SaveFileDialog Filter = 文本文件( txt) * txt SaveFileDialog FileName = 接收的文件 txt SaveFileDialog InitialDirectory = c:Mytext If SaveFileDialog ShowDialog() = DialogResult OK Then Dim fs As New IO FileStream(SaveFileDialog FileName _ IO FileMode OpenOrCreate) 接收数据并将其保存到一个新的文件 Dim rebyte( ) As Byte Dim myhostsocket As Socket = receivesocket Accept() 发送端计算机建立连接 Dim wr As New BinaryWriter(fs) 流写 myhostsocket Receive(rebyte) wr Write(rebyte rebyte Length ) fs Close() myhostsocket Shutdown(SocketShutdown Receive) myhostsocket Close() Label Text = SaveFileDialog FileName 读取已保存的文件 Dim Readw As StreamReader Readw = File OpenText(SaveFileDialog FileName) 设置指针到开始位置 Readw BaseStream Seek( SeekOrigin Begin) Readw BaseStream Position = While (Readw Peek() > ) TextBox Text += Readw ReadLine() & vbCrLf End While Readw Close() End If End Sub 好了代码输入完毕 接下来我们来运行程序测试一下 程序启动后会弹出Form 窗体(发送端)和Form 窗体(接收端) 我们选择Form 窗体(发送端)点击发送按钮 随意选择一个文本文件即可 看一看效果 如图 接下来我们需要选择Form 窗体(接收端)点击接收文本并保存按钮图 这个窗体是利用了TCP协议进行了数据的通信 在传输时必须设置同时打开发送 与接收端窗体才能进行数据的传输 如图 通过以上的测试 程序运行成功 我们主要利用了Socket以及TCP文件传输的技术进行了数据的发送与接收 希望此程序实例能够给大家带来帮助 lishixinzhi/Article/program/net/201311/12737
很赞哦! (1069)