java.io与网络通信】的更多相关文章

文件IO java.io.File是用于操作文件或目录的类: File file = new File("hello.txt"); 实例化File时不关心路径的目标并不会去读取文件或目录. File类提供了一些有用的方法: isFile(): 判断路径指向的是否为文件 createNewFile(): 当路径指向的文件不存在时创建一个空文件 exists(): 判断路径指向的文件是否存在 delete(): 删除路径指向的文件或目录 length(): 返回文件的长度 isDirect…
1 Java IO 1.1 Java IO 1.1.1 IO IO,即输入(Input)输出(Output)的简写,是描述计算机软硬件对二进制数据的传输.读写等操作的统称. 按照软硬件可分为: 磁盘IO 内存IO 网络IO 按照处理的方式可分为: 同步IO 非阻塞IO 异步IO 按照数据类型可分为: 字节流 字符流 随着软硬件技术的飞速发展,IO性能也有了很大的发展,但IO还是影响现代计算机系统性能最重要的因素之一 磁盘技术还严重影响读写性能 网络传输还存在很大的延迟 数据库的IO已经成为计算机…
Java IO体系 个人觉得可以用"字节流操作类和字符流操作类组成了Java IO体系"来高度概括Java IO体系. 借用几张网络图片来说明(图片来自 http://blog.csdn.net/zhangerqing/article/details/8466532 )  基于字节的IO操作 基于字符的IO操作   从上图可以看到,整个Java IO体系都是基于字符流(InputStream/OutputStream) 和 字节流(Reader/Writer)作为基类,根据不同的数据载…
经过前面内容的学习,我们了解了Java技术中实现网络通信的基本知识.下面将通过一个具体视力的实现过程,讲解客户端和服务器端通信的流程. 服务器端的实现文件是 Server.java,代码如下: import java.io.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.net.*; import java.util.*; class Conn extends Thread{ pri…
一.概览 二.磁盘操作 三.字节操作 实现文件复制 装饰者模式 四.字符操作 编码与解码 String 的编码方式 Reader 与 Writer 实现逐行输出文本文件的内容 五.对象操作 序列化 Serializable transient 六.网络操作 InetAddress URL Sockets Datagram 七.NIO 流与块 通道与缓冲区 缓冲区状态变量 文件 NIO 实例 选择器 套接字 NIO 实例 内存映射文件 对比 八.参考资料 一.概览 Java 的 I/O 大概可以分…
Io流 按照分类 有两种分类 流向方向: 有输入流和输出流 按照操作类型有:字节流和字符流 按照流向方向 字节流的一些操作 //读文件 FileInputStream fis = new FileInputStream("java.txt"); int temp = fis.read()//一次读取一个字节 System.out.println(temp); //打印的字母的码值 读取完返回-1 System.out.println((char)temp);//打印字母 byte[]…
I/O类库中使用“流”这个抽象概念.Java对设备中数据的操作是通过流的方式.表示任何有能力产出数据的数据源对象,或者是有能力接受数据的接收端对象.“流”屏蔽了实际的I/O设备中处理数据的细节.IO流用来处理设备之间的数据传输.设备是指硬盘.内存.键盘录入.网络等. IO的分类可以为: 流按操作数据类型的不同分为两种:字节流与字符流. 流按流向分为:输入流,输出流(以程序为参照物,输入到程序,或是从程序输出) 一.字节流 1.Inpustream InputStream 有read方法,一次读取…
在这篇文章里,我们主要讨论如何使用Java实现网络通信,包括TCP通信.UDP通信.多播以及NIO. TCP连接 TCP的基础是Socket,在TCP连接中,我们会使用ServerSocket和Socket,当客户端和服务器建立连接以后,剩下的基本就是对I/O的控制了. 我们先来看一个简单的TCP通信,它分为客户端和服务器端. 客户端代码如下:   import java.net.*; import java.io.*; public class SimpleTcpClient { public…
接着上一篇文章 高级Java工程师必备 ----- 深入分析 Java IO (一)BIO,我们来讲讲NIO 多路复用IO模型 场景描述 一个餐厅同时有100位客人到店,当然到店后第一件要做的事情就是点菜.但是问题来了,餐厅老板为了节约人力成本目前只有一位大堂服务员拿着唯一的一本菜单等待客人进行服务. 方法A: 无论有多少客人等待点餐,服务员都把仅有的一份菜单递给其中一位客人,然后站在客人身旁等待这个客人完成点菜过程.在记录客人点菜内容后,把点菜记录交给后堂厨师.然后是第二位客人....然后是第…
IO 服务端ServerSocket 客户端Socket 缺点每次客户端建立连接都会另外启一个线程处理.读取和发送数据都是阻塞式的. 如果1000个客户端建立连接将会产生1000个线程 Server端 package bhz.bio.test; import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class Server { private int port; priva…