如果我有一个名为“myshared”的shred首选项文件,我可以如何将数据追加到它不覆盖?如何将数据附加到现有的共享首选项文件
我需要登记制度,我想保存每个新用户数据(用户名和密码)使用sharedprefernces不是外部文件我的每个新用户的数据总是问题是myshared.xml覆盖 我“已经回答了我的帖子:
我试着用不同的ID每次创建一个新的XML文件来解决这个问题,这是我
编辑自己的帖子:
package com.example.task_8;
import java.io.File;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.content.SharedPreferences;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class Ac_3 extends Activity {
Button save;
EditText userName,password;
String name,pass,oldUser,oldpass,oldId;
Intent i;
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
setContentView(R.layout.ac_3);
save= (Button)findViewById(R.id.button1);
userName=(EditText) findViewById(R.id.editText1);
password=(EditText) findViewById(R.id.editText2);
/////////////////////////////////////////////////
i = getIntent();
TextWatcher listener = new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@SuppressWarnings("deprecation")
@Override
public void afterTextChanged(Editable s) {
name= userName.getText().toString();
pass= password.getText().toString();
}
};
password.addTextChangedListener(listener);
userName.addTextChangedListener(listener);
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
File f=new File("/data/data/com.example.task_8/shared_prefs/"+name+".xml");
if(f.exists())
{
AlertDialog alertDialog = null;
alertDialog = new AlertDialog.Builder(Ac_3.this).create();
alertDialog.setTitle("error msg");
alertDialog.setMessage("This user name already exist , try another one");
alertDialog.show();
}
else
{
SharedPreferences sp = getSharedPreferences("myshared"+name, 0);
SharedPreferences.Editor spe = sp.edit();
spe.putString("userName",name);
spe.putString("password",pass);
spe.commit();
i = new Intent(getApplicationContext(), MainActivity.class);
startActivity(i);
}
}
});
}
}
你能澄清你的意图吗? – Blackbelt
我需要做一个注册系统,我想保存每个新用户数据(用户名和密码)使用sharedprefernces不是外部文件我的问题与每个新的用户数据总是myshared.xml被覆盖:( – Akari
所以多个用户可以注册一个帐户在同一设备上? – Blackbelt