A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郝义涛 中级黑马   /  2014-6-11 15:36  /  876 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


import java.io.*;
import java.net.*;
import java.util.*;

public class UploadFileSocketServer {


        public static void main(String[] args) throws Exception
        {
                //建立服务端socket服务,并监听一个端口
                ServerSocket ss = new ServerSocket(10003);
               
                //通过accept方法获取链接过来的客户端对象
                Socket s = ss.accept();
               
                //获取客户端发送过来的数据,那么要使用客户端对象的读取流来读取数据
                BufferedReader bufin =
                                new BufferedReader(new InputStreamReader(s.getInputStream()) );
               
                //定义一个输出对象
                PrintWriter out = new PrintWriter(new FileWriter("H:\\server.txt"),true);
               
                //读取文件内容,并输出
                String line=null;
                while((line=bufin.readLine())!=null)
                {
                        System.out.println(line);
                        out.println(line);
                }
               
                OutputStream outs = s.getOutputStream();
                PrintWriter pw = new PrintWriter(outs,true);
               
                pw.println("上传成功");
                s.close();
                ss.close();
        }
}

import java.io.*;import java.net.*;
public class UploadFileSocket {        public static void main(String[] args) throws Exception        {                //建立以本机为服务器的socket对象                Socket s = new Socket("60.24.67.97",10003);                                //定义一个读取文本的缓冲区流对象                BufferedReader br =                                 new BufferedReader(new FileReader(new File("H:\\r.txt")));                                //获取socket输出对象                OutputStream out = s.getOutputStream();                PrintWriter pw = new PrintWriter(out,true);                                //读取文件内容,并输出                String line=null;                while((line=br.readLine())!=null)                {                        pw.println(line);                        System.out.println(line);                }                                s.shutdownOutput();                                BufferedReader bufin =                                 new BufferedReader(new InputStreamReader(s.getInputStream()) );                                System.out.println(bufin.readLine());                bufin.close();        }
}
运行时报错Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind        at java.net.PlainSocketImpl.socketBind(Native Method)        at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:383)        at java.net.ServerSocket.bind(ServerSocket.java:328)        at java.net.ServerSocket.<init>(ServerSocket.java:194)        at java.net.ServerSocket.<init>(ServerSocket.java:106)        at com.itheima.UploadFileSocketServer.main(UploadFileSocketServer.java:15)

求大神帮忙,想了好长时间了,没有弄明白,求帮忙!!






评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1 很给力!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马