Java 如何使用BufferedReader在JOptionPane中打印多行?

Java 如何使用BufferedReader在JOptionPane中打印多行?,java,swing,bufferedreader,joptionpane,Java,Swing,Bufferedreader,Joptionpane,使用BufferedReader时遇到问题。我想要的是打印要在Java服务器上打印的输入文本(来自android客户端)。使用System.out.println效果很好。但当我把它放在JOptionPane中时,它开始一个接一个地打印在对话框上。(一行=一个对话框,我需要点击“确定”以在不同的Joptionpane中显示下一行) 我希望在一个JOptionPane.showMessageDialog中打印所有行 这是我的密码: try {

使用BufferedReader时遇到问题。我想要的是打印要在Java服务器上打印的输入文本(来自android客户端)。使用System.out.println效果很好。但当我把它放在JOptionPane中时,它开始一个接一个地打印在对话框上。(一行=一个对话框,我需要点击“确定”以在不同的Joptionpane中显示下一行)

我希望在一个JOptionPane.showMessageDialog中打印所有行

这是我的密码:

try
            {
                clientSocket = serverSocket.accept(); // accept the client connection
                inputStreamReader = new InputStreamReader(clientSocket.getInputStream());
                bufferedReader = new BufferedReader(inputStreamReader); // get the client message
                DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
                Calendar cal = Calendar.getInstance();

                while ((message = bufferedReader.readLine()) != null) {

                JOptionPane.showMessageDialog(null, message);

                }

                inputStreamReader.close();
                clientSocket.close();

            } catch (IOException ex)
            {
                System.out.println("Problem in message reading");
            }

如何使用
StringBuilder
并将所有消息附加到其中,然后使用此完整的
StringBuilder
对象显示
JOptionPane

 StringBuilder s = new StringBuilder();
 while ((message = bufferedReader.readLine()) != null) {
     s.append(message+"\n");
 }

 JOptionPane.showMessageDialog(null, s);

使用
StringBuilder
(或)
StringBuffer
逐行追加消息

{      clientSocket = serverSocket.accept(); // accept the client connection
        inputStreamReader = new InputStreamReader(clientSocket.getInputStream());
      bufferedReader = new BufferedReader(inputStreamReader); // get the client message
            DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
            Calendar cal = Calendar.getInstance();
      StringBuilder str =new StringBuilder();

            while ((message = bufferedReader.readLine()) != null) {

             str.append(message+"\n");
            }
            JOptionPane.showMessageDialog(null, str);

            inputStreamReader.close();
            clientSocket.close();

        } catch (IOException ex)
        {
            System.out.println("Problem in message reading");
       }

谢谢我得到了我想要的!干杯