黑马程序员技术交流社区
标题:
使用TCP协议写一个可以上传文件的服务器和客户端。
[打印本页]
作者:
张会文
时间:
2013-1-4 11:23
标题:
使用TCP协议写一个可以上传文件的服务器和客户端。
本帖最后由 张会文 于 2013-1-4 13:34 编辑
//这是毕老师的视频中代码,可是就是不知道怎么调试 ,首先这个代码有两个 入口 ,但是要留哪一个入口呢?还有在//服务器端的开头就有报错,彻底弄迷了.求帮忙.
package com.itheima;
import java.io.*;
import java.net.*;
/**
* 9、 使用TCP协议写一个可以上传文件的服务器和客户端。
* @author Administrator
*客户端
*1.服务断点
*2.读取客户端已有数据
*3.通过socket输出流将数据发送给服务端。
*4.读取服务器端已有数据
*5.关闭。
*/
//客户端
public class Test9 {
public Test9() {
}
public static void main(String[] args) throws Exception{
Socket s=new Socket("192.168.1.254",10007);
FileInputStream fis=new FileInputStream("1.jpg");
OutputStream out=s.getOutputStream();
byte[] buf=new byte[1024];
int len=0;
while((len=fis.read(buf))!=-1){
out.write(buf,0,len);
}
//告诉服务端数据以写完
s.shutdownOutput();
InputStream in=s.getInputStream();
byte[] bufIn=new byte[1024];
int num =in.read(bufIn);
System.out.println(new String(bufIn,0,num));
fis.close();
s.close();
}
//服务端
class PicServer{
public static void main(String[]args) throws Exception {
ServerSocket ss=new ServerSocket(10007);
Socket s=ss.accept();
InputStream in=s.getInputStream();
FileOutputStream fos=new FileOutputStream("sever.jpg");
byte[]buf=new byte[1024];
int len=0;
while((len=in.read(buf))!=-1){
fos.write(buf,0,len);
}
OutputStream out=s.getOutputStream();
out.write("上传成功!".getBytes());
fos.close();
s.close();
ss.close();
}
}
}
复制代码
作者:
张会文
时间:
2013-1-4 13:35
此贴已解决!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2