繁体   English   中英

使用上下文写入文件-Android

[英]Writing to a file with context - Android

我创建了一个按钮,该按钮应将两个下拉菜单中的选定项写入txt文件。

为此,我使用以下方法:

    public static void save(Context ctx) {
    FileOutputStream fos;
    try {

        fos = ctx.openFileOutput("config.txt", Context.MODE_PRIVATE);


        ObjectOutputStream oos = new ObjectOutputStream(fos);
        oos.writeObject(MyActivity.klasse);
        oos.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }catch(IOException e){
        e.printStackTrace();
    }
}

这是我的onClickListener:

btnSave.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

                String text = sp_jahrgang.getSelectedItem().toString() + sp_klasse.getSelectedItem().toString();
                System.out.println("JAHRGANG:"+text);

                MyActivity.klasse = text;
                System.out.println("TEST:"+MyActivity.klasse);
                save();
        }
    });

问题是我不太了解“上下文”的概念。 我不知道我必须使用哪种上下文。 保存方法时,我必须在括号中添加什么?

任何帮助表示赞赏

您需要在save方法的括号中传递活动的上下文。 使用此方法时,您需要按照以下方式传递上下文,

  • 如果要从片段访问方法,则在括号内传递getActivity()

    save(getActivity());

  • 如果要从任何活动中调用此方法,则只需将this (将其存储到上下文中并不是很安全,但足以完成许多任务)或将getApplicationContext()放在方括号中。

    save(getApplicationContext())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM