第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java 客戶端-服務(wù)器應(yīng)用程序拋出“java.net.SocketException:

Java 客戶端-服務(wù)器應(yīng)用程序拋出“java.net.SocketException:

海綿寶寶撒 2022-12-28 14:02:30
我試圖創(chuàng)建一個客戶端-服務(wù)器應(yīng)用程序,其中客戶端生成一個隨機數(shù)并向服務(wù)器發(fā)送 n 個字符串。連接關(guān)閉發(fā)送字符串“BYE”。之后服務(wù)器必須計算接收到的字符串的總長度并打印出來。問題是,當我的客戶端嘗試連接到服務(wù)器時,此客戶端拋出“java.net.SocketException:連接重置”異常并崩潰。這是我的客戶代碼:import java.net.*;import java.io.*;import java.util.Random;import java.util.logging.Level;import java.util.logging.Logger;public class ClientStringa {    public static void main(String[] args) {        try{            Socket socket = new Socket("localhost", 5555);            PrintWriter out = new PrintWriter(socket.getOutputStream());            Random r = new Random();            int N = r.nextInt(100);            for(int i=1;i<=N;i++){                out.println("String" +i);                }            out.flush();        }        catch (IOException ex) {            Logger.getLogger(ClientStringa.class.getName()).log(Level.SEVERE, null, ex);            }    }}我的服務(wù)器代碼:import java.io.*;import java.net.*;import java.util.logging.Level;import java.util.logging.Logger;public class ServerStringa {    public static void main(String[] args) {        try {            ServerSocket socket = new ServerSocket(5555);            while(true){                System.out.println("Waiting for client connections...");                Socket client = socket.accept();    //connessione dei client                ThreadStringa thread = new ThreadStringa(client);                thread.start();                         }        } catch (IOException ex) {            Logger.getLogger(ServerStringa.class.getName()).log(Level.SEVERE, null, ex);        }       }  }
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經(jīng)驗 獲得超10個贊

在socket編程中,應(yīng)該使用DataOutputStream而不是客戶端程序中的PrintWriter來與Server通信。還要記住從客戶端執(zhí)行 close() 。我只修改了你的客戶端程序,你可以檢查一下。


import java.net.*;

import java.io.*;

import java.util.Random;

import java.util.logging.Level;

import java.util.logging.Logger;


public class ClientStringa {


    public static void main(String[] args) {

        try{

            Socket socket = new Socket("localhost", 5555);

            DataOutputStream out=new DataOutputStream(socket.getOutputStream());

//            PrintWriter out = new PrintWriter(socket.getOutputStream());

            Random r = new Random();

            int N = r.nextInt(100);

            for(int i=1;i<=N;i++){

//                out.println("String" +i);

                out.writeUTF("String" +i);

            }

            out.flush();

            out.close();

        }

        catch (IOException ex) {

            Logger.getLogger(ClientStringa.class.getName()).log(Level.SEVERE, null, ex);    

        }

    }

}


查看完整回答
反對 回復(fù) 2022-12-28
  • 1 回答
  • 0 關(guān)注
  • 110 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號