Java awt 字体 中文乱码 的问题解决方法

  • Post author:
  • Post category:java


这边使用 Java 的 awt 包 编写了一个界面。

这里是代码:

package com.莱迪娜的风声;  
  
import java.awt.Frame;  
import java.awt.Menu;  
import java.awt.MenuBar;  
import java.awt.MenuItem;  
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  
import java.awt.event.WindowAdapter;  
import java.awt.event.WindowEvent;  
  
/** 
 * problem java awt 关闭窗口 problem java awt 中文文字乱码 方框问题解决 
 *  
 * @author 莱迪娜的风声 or 歌声 
 */  
public class MenuTest extends Frame {  
  
    private static final long serialVersionUID = -8674841679576553093L;  
  
    MenuItem newf;  
    MenuItem itmm;  
  
    public MenuTest() { // 构建方法 无参构造  
        MenuBar mb = new MenuBar();  
        Menu file = new Menu("文件");  
        file.add(new MenuItem("新建"));  
        file.add(new MenuItem("打开"));  
        file.add(new MenuItem("关闭"));  
        itmm = new MenuItem("退出");  
        file.add(itmm);  
        itmm.addActionListener(new ActionListener() {  
            @Override  
            public void actionPerformed(ActionEvent e) {  
                // TODO Auto-generated method stub  
                if (e.getSource() == itmm) {  
                    System.exit(0);  
                }  
            }  
        });  
  
        mb.add(file);  
  
        this.addWindowListener(new WindowAdapter() {  
            public void windowClosing(WindowEvent we) {  
                System.exit(0);  
            }  
        });  
  
        this.setMenuBar(mb);  
        this.setTitle("莱迪娜的风声");  
        this.setSize(480, 360);  
        this.setLocationRelativeTo(null);  
        this.setVisible(true);  
    }  
  
    public static void main(String[] args) {  
        new MenuTest();  
    }  
}  

Run 后 发现中文字体 出现 乱码 、方框的情况。

如图所示:

出现这种情况,需要我们在编译Java源码的时候进行一些参数设定。

在Eclipse 打开的 Run Configurations 界面中找到 Arguments – VM arguments 添加这么一段参数  -Dfile.encoding=GB18030

如图所示:

之后Run,会发现问题解决。

以上,就是我为大家提供的 Java awt 字体 中文乱码 的问题解决方法。

注:以上代码均经本人测试通过。

时间:最后编辑于2022年9月19日19:16:03



版权声明:本文为apy29原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。