我还是新手。我正在制作一个Android应用程序来创作音乐。因此用户可以创建自己的音乐。如何在界面中保存用户选择的内容?例如:有3个按钮可供选择,按钮1用户选择“a”按钮2用户选择“c”,按钮3用户选择“f”。如何将其保存到文件中,如.txt文件,然后在用户想再次播放时加载它?
对不起,如果你真的不懂我的语言。也许你可以给我一些保存和加载到文件中的示例?我在stackoverflow中读了一些,但它太多了,我仍然没有找到答案。
答案 0 :(得分:0)
您可以用来保存文件:
File newxmlfile1 = new File(Environment.getExternalStorageDirectory()+"/kadirGameLevels");
newxmlfile1.mkdirs();
int i = 1;
File newxmlfile;
do{
String filename = i+".lvl";
newxmlfile = new File(Environment.getExternalStorageDirectory()+"/kadirGameLevels/"+filename);
i++;
}while(newxmlfile.exists());
try{
newxmlfile.createNewFile();
}catch(IOException e){
Log.e("IOException", "exception in createNewFile() method");
}
//we have to bind the new file with a FileOutputStream
FileOutputStream fileos = null;
try{
fileos = new FileOutputStream(newxmlfile);
}catch(FileNotFoundException e){
Log.e("FileNotFoundException", "can't create FileOutputStream");
}
并将文件发送到您的应用:
File file = new File(Environment.getExternalStorageDirectory() + "/kadirGameLevels/1.lvl");
DataInputStream stream = new DataInputStream(new FileInputStream(file));
答案 1 :(得分:0)
为什么要提交文件?为什么不共享偏好?
private void saveCurrentScore(long currentScore) {
try {
android.content.SharedPreferences.Editor editor = prefs.edit();
editor.putLong("currentscore", currentScore);
editor.commit();
} catch (Exception e) {
e.printStackTrace();
}
}
private String getCurrentScore() {
try{prefs = PreferenceManager.getDefaultSharedPreferences(activity);
return ""+ prefs.getLong("currentscore", 0);
}catch(Exception e)
{
e.printStackTrace();
}
return "";
}
注意: - 如果您正在使用andengine,请查看SecureSharedPreferences