標籤:android style blog class code java
背景
我們以常見的登入的時候有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