本帖最后由 张会文 于 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();
- }
- }
- }
复制代码 |
|