Java c/s 服务端如何给客户端返回信息
//服务器端
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TestServer {
public static void main(String[] args) throws IOException {
//1.建立服务端对象
ServerSocket ss=new ServerSocket(10001);
Socket s=ss.accept();//连接客户端
String ip=s.getInetAddress().getHostAddress();
System.out.println(ip+".....connected:");
//2.读取客户端发来的文件
InputStream in =s.getInputStream();
//3.存储读来的文件
File f=new File("C:\\");
if(!f.exists()){f.mkdirs();}
File file=new File(f,ip+".png");
FileOutputStream fos =new FileOutputStream(file);
byte[] b=new byte[1024];
int len=0;
while((len=in.read(b))!=-1){
fos.write(b,0,len);
}
//返回给客户端信息
//就是这部分有问题!
//报告的错误:Software caused connection abort: socket write error
OutputStream out=s.getOutputStream();
out.write("上传成功!".getBytes());
//关闭资源
fos.close();
s.close();
ss.close();
}
}
//客户端
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class TestClient{
public static void main(String[] args) throws UnknownHostException, IOException {
//1.建立客户端对象
Socket s=new Socket("192.168.1.11",10001);
//2.读取客户端要读取的图片
FileInputStream fis=new FileInputStream("C:\\0.png");
//3.将获取的socket流发送给服务端
OutputStream os=s.getOutputStream();
byte[] buf=new byte[1024];
int len=0;
while((len=fis.read(buf))!=-1){
os.write(buf,0,len);
}
s.shutdownOutput();
//返回文字,告诉客户端发送成功!
//这部分有问题
InputStream in=s.getInputStream();
byte[] bufIn=new byte[1024];
int lens=in.read(bufIn);
String text=new String(bufIn,0,lens+1);
System.out.println(text);
fis.close();
s.close();
}
}
跪求大神帮我看看,不胜感激!
...全文
相关推荐
java 售票系统 服务端与客户端
编写程序,模拟车票销售系统。要求利用C/S模式,实现多网点销售,每个网点的基本功能为卖票和退票,能够实时显示票源情况。客户端使用GUI界面。
基于C/S模式的Java聊天室
我利用Java实现基于C/S模式的聊天室程序。服务器程序主要侦听客户端发来的消息,客户端需要登录到服务器端才可以实现正常的聊天功能。
C/S 银行ATM机功能的设计与实现
C/S课程设计,用java代码模拟并实现银行ATM机中的功能
java聊天小程序 基于C/S
对初学java网络编程的很有用哦! 首先启动服务端 然后启动客户端登陆 登陆只要输入服务端所在主机的IP就可以了
C/S架构ServerSocket图书管理系统mysql
C/S架构ServerSocket图书管理系统 内附程序运行截图 sql脚本 mysql jar包 BookClient客户端代码 BookServer服务端代码


Java SE
