filetransportthread.java

来自「实现多人聊天以及私聊和传文件功能 类似于」· Java 代码 · 共 44 行

JAVA
44
字号

package NewQQ;

import java.io.*;

public class FileTransportThread extends Thread{
	String file;
	SingleFrame sf;
	ObjectOutputStream oos;
	public FileTransportThread(String file, SingleFrame sf, ObjectOutputStream oos) {
		this.file = file;
		this.sf = sf;
		this.oos = oos;
	}
	public void run(){
		try {
			byte[] data = new byte[1024];
			FileInputStream fis = new FileInputStream(new File(file));
			int len = fis.read(data);
			while(len>0){
				QQMessage filem = new QQMessage();
				filem.setSender(sf.me);
				filem.setRecver(sf.name);
				filem.setType(8);
				filem.setData(data);
				filem.setLen(len);
				oos.writeObject(filem);
				oos.flush();
				len = fis.read(data);
			}
			QQMessage filem = new QQMessage();
			filem.setSender(sf.me);
			filem.setRecver(sf.name);
			filem.setType(9);
			oos.writeObject(filem);
			oos.flush();
			fis.close();
			sf.jtextarea.append("文件发送完毕\n\n");
			file = "";
		} catch (Exception e) {
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?