我正在尝试将JSON提取的结果保存到本地文件。当我尝试使用openFileOutput时,得到file/folder
。搜索说它需要Context,但是我尝试了我拥有的所有其他类,但它保持相同的错误,或者得到error: cannot find symbol method openFileOutput(String,int)
我所有的类都扩展了AppCompatActivity或ArrayAdapter,但我在其中使用此代码的类扩展了AsyncTask。
Non-static method 'openFileOutput(java.lang.String,Int)' cannot be referenced from a static context.
答案 0 :(得分:0)
方法openFileOutput
属于类Context
,因此您不能直接在ArrayAdapter
类内部使用它。
您有多种选择:
在方法Context
中将writeToFile
的引用作为参数传递并使用context.openFileOutput(...)
或使用类getContext()
的方法ArrayAdapter
并使用getContext().openFileOutput(...)
如果您的ArrayAdapter
是活动的内部类,请不要使其(这些类)为静态,然后您可以直接从{{ 1}}。