Java 如何用LWUIT解决定位问题

Java 如何用LWUIT解决定位问题,java,java-me,localization,internationalization,lwuit,Java,Java Me,Localization,Internationalization,Lwuit,我用一个文本字段和命令制作了一个简单的表单,我想要两种语言:波斯语和英语,这样我就可以在运行时根据需要使用它们 我使用ResourceEditor进行了一些翻译,并将它们保存在名称English.res和Farsi.res下,然后将它们添加到我的资源中 现在我在调用本地化方法时遇到了一个问题,因为我不知道如何做到这一点。我将在这里发布我的代码,请更正 这是我的代码: public class Midlet extends javax.microedition.midlet.MIDlet {

我用一个文本字段和命令制作了一个简单的表单,我想要两种语言:波斯语和英语,这样我就可以在运行时根据需要使用它们

我使用ResourceEditor进行了一些翻译,并将它们保存在名称English.res和Farsi.res下,然后将它们添加到我的资源中

现在我在调用本地化方法时遇到了一个问题,因为我不知道如何做到这一点。我将在这里发布我的代码,请更正

这是我的代码:

public class Midlet extends javax.microedition.midlet.MIDlet {

    private Hashtable locale;

    public void startApp() {
        Display.init(this);

        try {
            Resources res = Resources.open("/Lang.res");    
            //Lang.res is resource file where these languages are stored
            // using resoureEditor.
            locale = res.getL10N("English.res", "en");

           /* See text below. */
        } catch (IOException ex) {
            ex.printStackTrace();
        }

        Form main = new Form((String) locale.get("FORM"));
        main.setLayout(new BoxLayout(BoxLayout.Y_AXIS));

        Label label = new Label((String) locale.get("NAME"));
        TextField tf1 = new TextField("");
        Button button = new Button((String) locale.get("OK"));

        main.addComponent(label);
        main.addComponent(tf1);
        main.addComponent(button);

        main.addCommand(new Command((String) locale.get("BACK")) {
            public void actionPerformed(ActionEvent evt) {}
        });
        main.show();
    }
    public void pauseApp() {}
    public void destroyApp(boolean unconditional) {}
}
这是我的英语

try块中的这两行是否正确

       Resources res = Resources.open("/Lang.res");    
       locale = res.getL10N("English.res", "en");
Lang.res是使用ResourceEditor存储这些语言的资源文件

我还需要做什么

我在第一行遇到一个例外。en是所需语言区域设置的名称,与res文件中的value列匹配


我仍然不确定它是否正确,但是,第一个论点是什么?语言环境?

我建议使用资源编辑器来创建L10N资源,它可以与gui同步,使这项任务更容易完成,并且易于在代码中检索

try {
        Constants.res = Resources.open("/Lang.res");
    } catch (Exception e){
        System.err.println("can't load resource file:" + e);
    }
Hashtable h = Constants.res.getL10N("English.res","en");

您可以接受自己的答案@aida
try {
        Constants.res = Resources.open("/Lang.res");
    } catch (Exception e){
        System.err.println("can't load resource file:" + e);
    }
Hashtable h = Constants.res.getL10N("English.res","en");