import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main (String [] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(15123);
Socket socket = serverSocket.accept();
System.out.println("Accepted connection : " + socket);
File transferFile = new File ("D:\\workspace\\SpringRmiClient.rar");
byte [] bytearray = new byte [(int)transferFile.length()];
FileInputStream fin = new FileInputStream(transferFile);
BufferedInputStream bin = new BufferedInputStream(fin);
bin.read(bytearray,0,bytearray.length);
OutputStream os = socket.getOutputStream();
System.out.println("Sending Files...");
os.write(bytearray,0,bytearray.length);
os.flush();
socket.close();
System.out.println("File transfer complete");
}
}
上述程序將文件從一臺PC傳輸到另一臺PC。
但是,文件傳輸的速度是low
。
有沒有可用的選項來提高文件傳輸的速度?如何提高以下代碼的文件傳輸速度
投資一個更快的網絡;-)順便說一句,不能保證'bin.read(bytearray,0,bytearray.length);'會讀取整個文件。 – Henry