java 1对多文件传输 50
想写一个1个服务端对多个客户端的文件传输,但是本人水平有限,请高手帮帮小弟。谢谢~!一下是服务端的文件传输部分。importjava.io.*;importjava.ne...
想写一个1个服务端对多个客户端的文件传输,但是本人水平有限,请高手帮帮小弟。谢谢~!
一下是服务端的文件传输部分。
import java.io.*;
import java.net.*;
public class FileServer{
public static void main(String[] args)throws Exception{
//创建文件流用来读取文件中的数据
System.out.println("正在打开文件......");
File file=new File("\\coboo.zip");
FileInputStream fos=new FileInputStream(file);
System.out.println("打开文件......"+file+" -- 成功~!");
//创建网络服务器接受客户请求
System.out.print("正在创建服务器......");
ServerSocket ss=new ServerSocket(3108);
Socket client=ss.accept();
System.out.println("-- 成功~!");
//创建网络输出流并提供数据包装器
OutputStream netOut=client.getOutputStream();
OutputStream doc=new DataOutputStream(new BufferedOutputStream(netOut));
//创建文件读取缓冲区
byte[] buf=new byte[2048];
int num=fos.read(buf);
System.out.println("开始传送文件......");
while(num!=(-1)){//是否读完文件
doc.write(buf,0,num);//把文件数据写出网络缓冲区
doc.flush();//刷新缓冲区把数据写往客户端
num=fos.read(buf);//继续从文件中读取数据
}
System.out.println("传送文件完毕~!");
fos.close();
doc.close();
}
}
感谢cyq2002。。但是我也知道有一个客户端连接就需要开一个线程,但是我是半路出家,java的基础理论一点也没学过,只能看懂一些代码。 展开
一下是服务端的文件传输部分。
import java.io.*;
import java.net.*;
public class FileServer{
public static void main(String[] args)throws Exception{
//创建文件流用来读取文件中的数据
System.out.println("正在打开文件......");
File file=new File("\\coboo.zip");
FileInputStream fos=new FileInputStream(file);
System.out.println("打开文件......"+file+" -- 成功~!");
//创建网络服务器接受客户请求
System.out.print("正在创建服务器......");
ServerSocket ss=new ServerSocket(3108);
Socket client=ss.accept();
System.out.println("-- 成功~!");
//创建网络输出流并提供数据包装器
OutputStream netOut=client.getOutputStream();
OutputStream doc=new DataOutputStream(new BufferedOutputStream(netOut));
//创建文件读取缓冲区
byte[] buf=new byte[2048];
int num=fos.read(buf);
System.out.println("开始传送文件......");
while(num!=(-1)){//是否读完文件
doc.write(buf,0,num);//把文件数据写出网络缓冲区
doc.flush();//刷新缓冲区把数据写往客户端
num=fos.read(buf);//继续从文件中读取数据
}
System.out.println("传送文件完毕~!");
fos.close();
doc.close();
}
}
感谢cyq2002。。但是我也知道有一个客户端连接就需要开一个线程,但是我是半路出家,java的基础理论一点也没学过,只能看懂一些代码。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询