awt swing 命令行中文乱码 awt swing 命令行中文乱码用javac -encoding GBK name.java java -Dencoding=GBK name只能解决部分的程序的问题,还有的系统的默认编码是cp1251,球高手指导啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有更个具体的信息么?编程环境是eclipse?设置的代码编码是什么?出现乱码问题的源代码能上来么?我们编译一下试试 import java.awt.event.*;import java.io.*;import java.net.*;import javax.swing.*;import javax.swing.event.*;public class ChatAWT extends javax.swing.JFrame {private JLabel jLabel1;private JLabel jLabel2;private JLabel jLabel3;private JButton jButton1;private JButton jButton2;private JButton jButton3;public JTextArea jTextArea2;public JTextArea jTextArea1;private JScrollPane jScrollPane1;private JScrollPane jScrollPane2;private Socket sk; //Socket对象private String Text=""; //接收聊天记录private void initGUI() {try { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(null); getContentPane().setBackground(new java.awt.Color(83,169,255));jLabel1 = new JLabel();getContentPane().add(jLabel1);jLabel1.setText("我的聊天室");jLabel1.setBounds(118, 12, 106, 26);jLabel1.setFont(new java.awt.Font("新宋体",1,20));jScrollPane1 = new JScrollPane();getContentPane().add(jScrollPane1, "Center");jScrollPane1.setBounds(45, 44, 262, 149);jTextArea1 = new JTextArea();jScrollPane1.setViewportView(jTextArea1);jTextArea1.setBackground(new java.awt.Color(191,251,214));jTextArea1.setEditable(false);jScrollPane2 = new JScrollPane();getContentPane().add(jScrollPane2, "Center");jScrollPane2.setBounds(45, 215, 262, 109);jTextArea2 = new JTextArea();jScrollPane2.setViewportView(jTextArea2);jButton1 = new JButton();getContentPane().add(jButton1);jButton1.setText("发送");jButton1.setBounds(245, 330, 62, 24);jButton1.addActionListener(new Chat_Send(this));jButton2 = new JButton();getContentPane().add(jButton2);jButton2.setText("清屏");jButton2.setBounds(351, 169, 92, 24);jButton2.addActionListener(new Chat_eliminate(this));jButton3 = new JButton();getContentPane().add(jButton3);jButton3.setText("聊天记录");jButton3.setBounds(351, 206, 92, 24);jLabel2 = new JLabel();getContentPane().add(jLabel2);jLabel2.setText("客户B");jLabel2.setBounds(339, 62, 112, 73);jLabel2.setFont(new java.awt.Font("华文行楷",1,36));jLabel3 = new JLabel();getContentPane().add(jLabel3);jLabel3.setText("客户A");jLabel3.setFont(new java.awt.Font("华文行楷",1,36));jLabel3.setBounds(339, 257, 112, 73);pack();this.setSize(500, 400);this.setLocationRelativeTo(null);this.setVisible(true);} catch (Exception e) {e.printStackTrace();} public static void main(String[] args){ new ChatAWT().initGUI(); }} 没这个两类的代码,编译不了Chat_SendChat_eliminate 编译和运行都没有问题,没有乱码。下面是我自己补上的代码import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class Chat_Send implements ActionListener { public Chat_Send(ChatAWT chatAWT) { // TODO Auto-generated constructor stub } @Override public void actionPerformed(ActionEvent arg0) { // TODO Auto-generated method stub }}import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class Chat_eliminate implements ActionListener { public Chat_eliminate(ChatAWT chatAWT) { // TODO Auto-generated constructor stub } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub }} package gui1;import java.awt.event.*;import java.io.*;import java.net.*;import javax.swing.*;public class ChatAWT extends javax.swing.JFrame {private JLabel jLabel1;private JLabel jLabel2;private JLabel jLabel3;private JButton jButton1;private JButton jButton2;private JButton jButton3;public JTextArea jTextArea2;public JTextArea jTextArea1;private JScrollPane jScrollPane1;private JScrollPane jScrollPane2;private Socket sk; //Socket对象private String Text=""; //接收聊天记录private BufferedReader bs;private PrintWriter pw;public ChatAWT(Socket sk) throws IOException{ this.sk=sk; // pw=new PrintWriter(new OutputStreamWriter(sk.getOutputStream()));}public void initGUI(){try { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(null); getContentPane().setBackground(new java.awt.Color(83,169,255));jLabel1 = new JLabel();getContentPane().add(jLabel1);jLabel1.setText("我的聊天室");jLabel1.setBounds(118, 12, 106, 26);jLabel1.setFont(new java.awt.Font("新宋体",1,20));jScrollPane1 = new JScrollPane();getContentPane().add(jScrollPane1, "Center");jScrollPane1.setBounds(45, 44, 262, 149);jTextArea1 = new JTextArea();jScrollPane1.setViewportView(jTextArea1);jTextArea1.setBackground(new java.awt.Color(191,251,214));jTextArea1.setEditable(false);jScrollPane2 = new JScrollPane();getContentPane().add(jScrollPane2, "Center");jScrollPane2.setBounds(45, 215, 262, 109);jTextArea2 = new JTextArea();jScrollPane2.setViewportView(jTextArea2);jButton1 = new JButton();getContentPane().add(jButton1);jButton1.setText("发送");jButton1.setBounds(245, 330, 62, 24);jButton1.addActionListener(action);jButton2 = new JButton();getContentPane().add(jButton2);jButton2.setText("清屏");jButton2.setBounds(351, 169, 92, 24);jButton2.addActionListener(action); jButton3 = new JButton();getContentPane().add(jButton3);jButton3.setText("聊天记录");jButton3.setBounds(351, 206, 92, 24);jButton3.addActionListener(action);jLabel2 = new JLabel();getContentPane().add(jLabel2);jLabel2.setText("客户B");jLabel2.setBounds(339, 62, 112, 73);jLabel2.setFont(new java.awt.Font("华文行楷",1,36));jLabel3 = new JLabel();getContentPane().add(jLabel3);jLabel3.setText("客户A");jLabel3.setFont(new java.awt.Font("华文行楷",1,36));jLabel3.setBounds(339, 257, 112, 73);pack();this.setSize(500, 400);this.setLocationRelativeTo(null);this.setVisible(true);this.setResizable(false);} catch (Exception e) { e.printStackTrace();} } ActionListener action =new ActionListener(){ public void actionPerformed(ActionEvent e) { String string=e.getActionCommand(); if(string.equals("发送")) { try { // BufferedReader bs=new BufferedReader(new InputStreamReader()); PrintWriter pw=new PrintWriter(new OutputStreamWriter(sk.getOutputStream())); // while((Text=bs.readLine())!=null) pw.println(jTextArea2.getText()); pw.flush(); } catch (Exception e2) { // TODO: handle exception e2.printStackTrace(); } } if(string.equals("清屏")) { jTextArea2.setText(""); } if(string.equals("聊天记录")); } }; }package gui1;import java.io.IOException;import java.net.Socket;public class Chat { public static void main(String[] args )throws IOException { Socket s=new Socket("localhost",30000); ChatAWT chatAWT=new ChatAWT(s); chatAWT.initGUI(); } }import java.io.*;import java.net.*;import java.util.HashSet;import java.util.Scanner;import java.util.Set;//服务端public class Server {public static void main(String[] args) throws Exception {System.out.println("服务器已启动");//创建serversocket对象ServerSocket ss=new ServerSocket(30000);//进行监听,获得相应的客户端socket对象、Socket sk=ss.accept();if(sk!=null){//读取客户端发来输出流数据InputStream in=sk.getInputStream();OutputStream out=sk.getOutputStream();//把字节流读到缓冲字符流中(new InputStreamReader(in)把字节流转化成字符流)BufferedReader reader=new BufferedReader(new InputStreamReader(in));String msg="";while((msg=reader.readLine())!=null){System.out.println("客户端:"+msg);//把得到的信息又返回给客户端PrintStream print=new PrintStream(out,true); //会自动刷新和写如换行符'\n'print.print("我发出去了((()))");System.out.println("我发出去了");}}}} 如何使控制台 支持 输入? 为什么Constructor不能用synchronized修饰 谁有“有向有环图”的算法吗 很简单的一个背景问题。。。 JTextPane的问题 请教高手,这样可以吗? 难道Properties类就不能写入能正常显示的中文么? protected void processWindowEvent(WindowEvent e) JB中是否有现成的文本检验组件? Java日志输出问题 请问如何用字符串生成某个时区、某个时间的Date啊? Win7 难倒老拳师,能编译,但是不能运行
import java.io.*;
import java.net.*;import javax.swing.*;
import javax.swing.event.*;public class ChatAWT extends javax.swing.JFrame {
private JLabel jLabel1;
private JLabel jLabel2;
private JLabel jLabel3;
private JButton jButton1;
private JButton jButton2;
private JButton jButton3;
public JTextArea jTextArea2;
public JTextArea jTextArea1;
private JScrollPane jScrollPane1;
private JScrollPane jScrollPane2;
private Socket sk; //Socket对象
private String Text=""; //接收聊天记录
private void initGUI() {
try {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
getContentPane().setBackground(new java.awt.Color(83,169,255));jLabel1 = new JLabel();
getContentPane().add(jLabel1);
jLabel1.setText("我的聊天室");
jLabel1.setBounds(118, 12, 106, 26);
jLabel1.setFont(new java.awt.Font("新宋体",1,20));
jScrollPane1 = new JScrollPane();
getContentPane().add(jScrollPane1, "Center");
jScrollPane1.setBounds(45, 44, 262, 149);jTextArea1 = new JTextArea();
jScrollPane1.setViewportView(jTextArea1);
jTextArea1.setBackground(new java.awt.Color(191,251,214));
jTextArea1.setEditable(false);jScrollPane2 = new JScrollPane();
getContentPane().add(jScrollPane2, "Center");
jScrollPane2.setBounds(45, 215, 262, 109);jTextArea2 = new JTextArea();
jScrollPane2.setViewportView(jTextArea2);jButton1 = new JButton();
getContentPane().add(jButton1);
jButton1.setText("发送");
jButton1.setBounds(245, 330, 62, 24);
jButton1.addActionListener(new Chat_Send(this));
jButton2 = new JButton();
getContentPane().add(jButton2);
jButton2.setText("清屏");
jButton2.setBounds(351, 169, 92, 24);
jButton2.addActionListener(new Chat_eliminate(this));
jButton3 = new JButton();
getContentPane().add(jButton3);
jButton3.setText("聊天记录");
jButton3.setBounds(351, 206, 92, 24);
jLabel2 = new JLabel();
getContentPane().add(jLabel2);
jLabel2.setText("客户B");
jLabel2.setBounds(339, 62, 112, 73);
jLabel2.setFont(new java.awt.Font("华文行楷",1,36));
jLabel3 = new JLabel();
getContentPane().add(jLabel3);
jLabel3.setText("客户A");
jLabel3.setFont(new java.awt.Font("华文行楷",1,36));
jLabel3.setBounds(339, 257, 112, 73);pack();
this.setSize(500, 400);
this.setLocationRelativeTo(null);
this.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
public static void main(String[] args)
{
new ChatAWT().initGUI();
}}
Chat_Send
Chat_eliminate
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Chat_Send implements ActionListener { public Chat_Send(ChatAWT chatAWT) {
// TODO Auto-generated constructor stub
} @Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub }}import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Chat_eliminate implements ActionListener { public Chat_eliminate(ChatAWT chatAWT) {
// TODO Auto-generated constructor stub
} @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub }}
package gui1;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import javax.swing.*;
public class ChatAWT extends javax.swing.JFrame {
private JLabel jLabel1;
private JLabel jLabel2;
private JLabel jLabel3;
private JButton jButton1;
private JButton jButton2;
private JButton jButton3;
public JTextArea jTextArea2;
public JTextArea jTextArea1;
private JScrollPane jScrollPane1;
private JScrollPane jScrollPane2;
private Socket sk; //Socket对象
private String Text=""; //接收聊天记录
private BufferedReader bs;
private PrintWriter pw;
public ChatAWT(Socket sk) throws IOException
{
this.sk=sk;
// pw=new PrintWriter(new OutputStreamWriter(sk.getOutputStream()));
}public void initGUI(){
try {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
getContentPane().setBackground(new java.awt.Color(83,169,255));jLabel1 = new JLabel();
getContentPane().add(jLabel1);
jLabel1.setText("我的聊天室");
jLabel1.setBounds(118, 12, 106, 26);
jLabel1.setFont(new java.awt.Font("新宋体",1,20));
jScrollPane1 = new JScrollPane();
getContentPane().add(jScrollPane1, "Center");
jScrollPane1.setBounds(45, 44, 262, 149);jTextArea1 = new JTextArea();
jScrollPane1.setViewportView(jTextArea1);
jTextArea1.setBackground(new java.awt.Color(191,251,214));
jTextArea1.setEditable(false);jScrollPane2 = new JScrollPane();
getContentPane().add(jScrollPane2, "Center");
jScrollPane2.setBounds(45, 215, 262, 109);jTextArea2 = new JTextArea();
jScrollPane2.setViewportView(jTextArea2);jButton1 = new JButton();
getContentPane().add(jButton1);
jButton1.setText("发送");
jButton1.setBounds(245, 330, 62, 24);
jButton1.addActionListener(action);
jButton2 = new JButton();
getContentPane().add(jButton2);
jButton2.setText("清屏");
jButton2.setBounds(351, 169, 92, 24);
jButton2.addActionListener(action);
jButton3 = new JButton();
getContentPane().add(jButton3);
jButton3.setText("聊天记录");
jButton3.setBounds(351, 206, 92, 24);
jButton3.addActionListener(action);jLabel2 = new JLabel();
getContentPane().add(jLabel2);
jLabel2.setText("客户B");
jLabel2.setBounds(339, 62, 112, 73);
jLabel2.setFont(new java.awt.Font("华文行楷",1,36));
jLabel3 = new JLabel();
getContentPane().add(jLabel3);
jLabel3.setText("客户A");
jLabel3.setFont(new java.awt.Font("华文行楷",1,36));
jLabel3.setBounds(339, 257, 112, 73);pack();
this.setSize(500, 400);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setResizable(false);
} catch (Exception e) {
e.printStackTrace();}
}
ActionListener action =new ActionListener(){
public void actionPerformed(ActionEvent e)
{
String string=e.getActionCommand();
if(string.equals("发送"))
{
try {
// BufferedReader bs=new BufferedReader(new InputStreamReader());
PrintWriter pw=new PrintWriter(new OutputStreamWriter(sk.getOutputStream()));
// while((Text=bs.readLine())!=null)
pw.println(jTextArea2.getText());
pw.flush();
} catch (Exception e2) {
// TODO: handle exception
e2.printStackTrace();
}
}
if(string.equals("清屏"))
{
jTextArea2.setText("");
}
if(string.equals("聊天记录"));
}
};
}
package gui1;import java.io.IOException;
import java.net.Socket;public class Chat {
public static void main(String[] args )throws IOException
{
Socket s=new Socket("localhost",30000);
ChatAWT chatAWT=new ChatAWT(s);
chatAWT.initGUI();
}
}
import java.io.*;
import java.net.*;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
//服务端
public class Server {
public static void main(String[] args) throws Exception {
System.out.println("服务器已启动");
//创建serversocket对象
ServerSocket ss=new ServerSocket(30000);//进行监听,获得相应的客户端socket对象、
Socket sk=ss.accept();
if(sk!=null)
{
//读取客户端发来输出流数据
InputStream in=sk.getInputStream();
OutputStream out=sk.getOutputStream();
//把字节流读到缓冲字符流中(new InputStreamReader(in)把字节流转化成字符流)
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String msg="";
while((msg=reader.readLine())!=null){
System.out.println("客户端:"+msg);//把得到的信息又返回给客户端
PrintStream print=new PrintStream(out,true); //会自动刷新和写如换行符'\n'
print.print("我发出去了((()))");
System.out.println("我发出去了");
}
}
}
}