背景
我们以常见的登录的时候有CheckBox来显示是否保存帐号密码的形式来生动的讲解这个故事。
最后是以txt文档保存,用到的是Java的IO操作。
这个只是粗略的,大家不喜勿喷。
保存文件
public static void savefile2card(Context context,String username,String password)
{
File file = null;
FileOutputStream fos = null;
try
{
// file = new File("/data/data/com.yuyidong.savefile/savefile.txt");
file = new File(context.getFilesDir(),"info.txt");
fos = new FileOutputStream(file);
fos.write((username+"!!!!"+password).getBytes());
}
catch (Exception e)
{
// TODO 自动生成的 catch 块
e.printStackTrace();
try
{
fos.close();
}
catch (IOException e1)
{
// TODO 自动生成的 catch 块
e1.printStackTrace();
}
}
}
读取文件
public static Map<String,String> getSaveFile(Context context)
{
File file =new File(context.getFilesDir(),"info.txt");
try
{
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String str = br.readLine();
String[] infos = str.split("!!!!");
Map<String,String> map = new HashMap<String, String>();
map.put("username",infos[0]);
map.put("password", infos[1]);
br.close();
return map;
}
catch (Exception e)
{
// TODO 自动生成的 catch 块
e.printStackTrace();
return null;
}
finally
{
}
}
主程序
public class MainActivity extends Activity {private Button button;
private CheckBox check;
private EditText usernameText;
private EditText passwordText;
private String username;
private String password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
check = (CheckBox) findViewById(R.id.check);
usernameText = (EditText) findViewById(R.id.username);
passwordText = (EditText) findViewById(R.id.password);
button.setOnClickListener(new buttonListener());
Map<String, String> map = read.getSaveFile(this);
usernameText.setText(map.get("username"));
passwordText.setText(map.get("password"));
}class buttonListener implements OnClickListener
{@Override
public void onClick(View v) {
// TODO 自动生成的方法存根
username = usernameText.getText().toString();
password = passwordText.getText().toString();
System.out.println(username+"~!!~"+password);
if(check.isChecked())
{
save.savefile2card(MainActivity.this, username, password);
}
}
}
我是天王盖地虎的分割线
源代码:http://pan.baidu.com/s/1dD1Qx01
saveFile.zip
转载请注明出处:http://www.cnblogs.com/yydcdut/p/3708964.html