JFrame方面的就不做介绍了,下面介绍IO流的知识
程序中主要使用了java IO 中的两个类:
两个字节流操作的类
字节流的写:FileOutputStream 继承OutputStream
从字节流读数据:FileInputStream 继承 InputStream
FileOutputStream 主要有write(byte[] b),write(int b),write(byte[] b,int off,int len)方法,网络通信可以用到的是write(byte[] b)方法。
FileInputStream 主要有read(byte[] b),read(),read(byte[] b,int off,int len)方法,网络通信中与write(byte[] b)方法相对应的是read(byte[] b)方法。
程序中主要用到了read(byte[] b),write(byte[] b)方法,这里详解与这两个方法操作需要用到的一些方法;
write(byte[] b):字节流写操作,需要把你需要传输的数据都转为字节数组:
Int转byte[] 数组:
public static byte[] int_byte(int a){ //int 转 byte数组
/*
* 十六位中的一个位可以表示四个二进制位
*/
byte [] buf = new byte[4];
buf[0]=(byte)(0xff & a ); //最低位
buf[1]=(byte)((a>>8)&0xff); //次低位
buf[2]=(byte)((a>>16)&0xff); //次高位
buf[3]=(byte)(a>>>24); //最高位,无符号右移
return buf;
}
String 转byte[] 数组可以使用getBytes();获取
read(byte[] b) : 字节流的读操作,每次读取一个限定长度的字节数组
时间此程序的另外一个方面就是 JTextArea文本域的使用,下面介绍JTextArea的方法:
文本区
文本区(JTextArea)是窗体中一个放置文本的区域。文本区与文本框的主要区别是文本区可存放多行文本。javax.swing包中的JTextArea类用来建立文本区。JTextArea组件没有事件。
文本区处理程序的基本内容有以下几个方面:
声明一个文本区名。
建立一个文本区对象。
将文本区对象加入到某个容器。
JTextArea类的主要构造方法:
JTextArea(),以默认的列数和行数,创建一个文本区对象。
JTextArea(String s),以s为初始值,创建一个文本区对象。
JTextArea(Strings ,int x,int y),以s为初始值,行数为x,列数为y,创建一个文本区对象。
JTextArea(int x,int y)以行数为x,以列数为y,创建一个文本区对象。
JTextArea类的其他常用方法:
setText(String s),