每日日报

应用私有路径 data/data/包名/
控件:CheckBox   isChecked();

登录案例  File

MainActivity.java

public class MainActivity extends Activity {

private EditText et_username;

private EditText et_pwd;

private CheckBox cb_isSave;

private Button btn_login;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//加载界面

setContentView(R.layout.activity_main);

//找到关心的控件

et_username = (EditText) findViewById(R.id.et_username);

et_pwd = (EditText) findViewById(R.id.et_password);

cb_isSave = (CheckBox) findViewById(R.id.cb_isSave);

btn_login = (Button) findViewById(R.id.btn_login);

//设置点击事件

btn_login.setOnClickListener(new MyListener());

//获取用户保存的信息

// String[] info = Utils.readInfo();

// String[] info = Utils.readInfobyContext(this);

String[] info = Utils.readInfoFromSdCard();

//如果返回不为空 说明有信息 显示到edittext上

if(info!=null){

//显示用户的信息

et_username.setText(info[0]);

et_pwd.setText(info[1]);

}

}

private class MyListener implements OnClickListener{

@Override

public void onClick(View v) {

//当按钮被点击就会走这个方法

//①获取用户输入

String pwd = et_pwd.getText().toString().trim();

String username = et_username.getText().toString().trim();

//②判断输入是否为空

if(TextUtils.isEmpty(username)||TextUtils.isEmpty(pwd)){

//2.1如果为空 Toast提示用户 不能为空

Toast.makeText(MainActivity.this, "用户名密码不能为空", Toast.LENGTH_SHORT).show();

}else{

//2.2如果不为空 判断是否保存密码

//③ 通过checkbox的状态 判断是否保存

boolean checked = cb_isSave.isChecked();

if(checked){

//boolean saveInfo = Utils.saveInfo(username,pwd);

//boolean saveInfo = Utils.saveInfobycontext(MainActivity.this,username,pwd);

boolean saveInfo = Utils.saveInfo2sdcard(username,pwd);

if(saveInfo){

Toast.makeText(MainActivity.this, "保存成功", Toast.LENGTH_SHORT).show();

}else{

Toast.makeText(MainActivity.this, "保存失败", Toast.LENGTH_SHORT).show();

}

//勾选上了 保存用户名密码

//Log.d("MainActivity", "保存用户名:"+username+"密码:"+pwd);

}

//④执行登陆的业务逻辑

Log.d("MainActivity", "开始登陆....");

}

}

}

}

Utils.java

/**

* 保存用户名密码

* @param username 用户名

* @param pwd 密码

* @return 是否保存成功

*/

public static boolean saveInfo(String username, String pwd) {

String info = username+"##"+pwd;

File file = new File("data/data/com.itheima.logindemo/info.txt");

try {

FileOutputStream fos = new FileOutputStream(file);

fos.write(info.getBytes());

fos.close();

return true;

} catch (Exception e) {

e.printStackTrace();

return false;

}

}

原文地址:https://www.cnblogs.com/zhukaile/p/14835903.html