1、JavaAWT中文乱码问题:代码如下:package 罕铞泱殳com.awt.frame;import java.awt.Color;import java.awt.FileDialog;import java.awt.Frame;import java.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.TextArea;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;/**** @author Administrator* 文本编译器*/public class TextEditor { private Frame f; private MenuBar mb; private Menu mFile,mEdit,mHelp,mTools; private MenuItem mOpen,mSave,mExit,mCopy,mPaste,mReplace,mWeb,mPaint,mDefine; private FileDialog fd; private String fileName; private char ch; private String s=""; private TextArea ta; private MenuListener menuListener; private FileOutputStream fos; private OutputStreamWriter osw; private FileInputStream fis; private InputStreamReader isr; private BufferedReader br; public TextEditor() { f=new Frame("简单文本编译器"); mb=new MenuBar(); mFile=new Menu("文件"); mEdit=new Menu("编辑"); mHelp=new Menu("帮助"); mTools=new Menu("工具栏"); mOpen=new MenuItem("打开"); mSave=new MenuItem("保存"); mExit=new MenuItem("退出"); mCopy=new MenuItem("复制"); mPaste=new MenuItem("粘贴"); mReplace=new MenuItem("替换"); mWeb=new MenuItem("Web工具"); mPaint=new MenuItem("绘图"); mDefine=new MenuItem("自定义"); f.setMenuBar(mb); mb.add(mFile); mb.add(mEdit); mb.setHelpMenu(mHelp); mFile.add(mOpen); mFile.add(mSave); mFile.addSeparator(); mFile.add(mExit); mEdit.add(mCopy); mEdit.add(mPaste); mEdit.add(mReplace); mEdit.addSeparator(); mEdit.add(mTools); mTools.add(mWeb); mTools.add(mPaint); mTools.add(mDefine); ta=new TextArea("",10,10); f.add("Center",ta); ta.setForeground(Color.black);//设置文本颜色 ta.addKeyListener(new KeyAdapter() { public void keyTyped(KeyEvent ev) { s+=ev.getKeyChar(); } }); f.setSize(400,200); f.setVisible(true); menuListener=new MenuListener(); mExit.addActionListener(menuListener); mOpen.addActionListener(menuListener); mSave.addActionListener(menuListener); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(1); } }); } public static void main(String[] args) { TextEditor te=new TextEditor(); }class MenuListener implements ActionListener{ public void actionPerformed(ActionEvent ev) { MenuItem i=(MenuItem)ev.getSource(); String label=i.getLabel(); if(label=="退出") System.exit(1); else if(label=="保存") saveFile(); }}void saveFile() { fd=new FileDialog(f,"请输入要保存的文件名",FileDialog.SAVE); fd.setVisible(true); fileName=fd.getFile(); try { fos=new FileOutputStream(fileName); osw=new OutputStreamWriter(fos); System.out.println(s); osw.write(s); osw.flush(); osw.close(); fos.close(); }catch(Exception e) {}}}运行之后,可以看到中文乱码,如图所示:
2、点击Run菜单按钮,如图所示:
3、继续点击Run--->Run Configurations列表,如图所示:
4、在Run Configurations对话框中,点击Argument菜单,如图所示:
5、在VM arguments输入框中输入:-Dfile.encoding=gbk,在点击Apply应用按钮,最后点击Run按钮,如图所示:
6、运行之后,结果如图:中文乱码问题解决。