当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > .Net和Java的socket机制比较

ASP.NET
ASP.NET在上传文件时对文件类型的高级判断的代码
JQuery运用ajax注册用户实例(后台asp.net)
Asp.net与SQLserver一起打包部署安装图文教程
asp.net 上传下载输出二进制流实现代码
asp.net(C#)解析Json的类代码
asp.net 截取字符串代码
asp.net ubb使用代码
asp.net XML文件操作实现代码
asp.net利用HttpModule实现防sql注入
ASP.NET(C#)中操作SQLite数据库实例
asp.net(c#)ref,out ,params的区别
asp.net(C#)防sql注入组件的实现代码
asp.net FCKeditor自定义非空验证
Asp.net TreeView来构建用户选择输入的方法 推荐
asp.net(C#)函数对象参数传递的问题
Asp.net中的GridView导出遇到的两个问题和解决方法
asp.Net 中获取一周第一天,一月第一天等实现代码
asp.net MaxLengthValidator 最大长度验证控件代码
C# 通用文件上传类
asp.net 自定义控件实现无刷新上传图片,立即显示缩略图,保存图片缩略图

ASP.NET 中的 .Net和Java的socket机制比较


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 77 ::
收藏到网摘: n/a

socket是基于TCP和UDP协议的高层接口,定义了收发数据的格式。Java的TCP服务中使用的Socket是一种流机制,即对于编程人员来说,处理socket只需要从Socket中获取流,然后可以像处理本地流一样来进行数据的收发。

例如:

DataOutputStream outToClient =new DataOutputStream(socket.getOutputStream());

BufferedReader inFromClient =new BufferedReader(new InputStreamReader(socket.getInputStream()));

String requestMessageLine = inFromClient.readLine();

outToClient.writeBytes(requestMessageLine);
 
.Net的Socket机制提供了两种实现:一种是直接用Socket类,一种是使用对Socket再次封装的TcpClient,UdpClient类来实现。.Net提供了一种统一的收发机制:NetworkStream。

TcpClient和Socket的底层都是通过NetworkStream来传送数据的。它们都可以产生一个NetworkStream。例如:

TcpClient client = server.AcceptTcpClient();NetworkStream stream = client.GetStream();

.Net的socket和Java的socket在收发数据上的最大不同是:Java的socket可以像普通的流一样操作。.Net的socket有多种实现方法,可以直接用Socket.send()来发,也可以用NetwordStream来发送,也可以用TcpClient来发送。但是每种实现在收发数据的时候都是通过显示的对缓冲区进行操作。例如:

byte[] datasize = new byte[4]; networkStream.Write(datasize,0,4);socket.Send(datasize, 0,datasize.Length, 0);