码迷,mamicode.com
首页 > 其他好文 > 详细

文件存储

时间:2018-11-04 19:23:41      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:edit   protect   ref   puts   enc   cti   static   textutils   editor   

1、用SharedPreferences 向文件里写入内容

SharedPreferences sp=getSharesPreferences("文件名",模式); //创建并打开文件

SharedPreferences.Editor editor=sp.edit();                                       //获取编辑器,读取不需要

editor.putString("变量名",变量值);                                                          //put的数据类型,如果读取文件内容用get

editor.commit();                                       //保存文件并关闭  

代码示例:

public class MainActivity extends AppCompatActivity {
    EditText et_tel=null;
    SharedPreferences sp;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        et_tel=(EditText)findViewById(R.id.et_tel);
        sp=getSharedPreferences("config",MODE_PRIVATE);
    }
    public void intercept(View view){
        String number=et_tel.getText().toString().trim();
        SharedPreferences.Editor editor=sp.edit();
        editor.putString("number",number);
        editor.commit();
        Toast.makeText(this,"保存成功",Toast.LENGTH_SHORT).show();
    }
}

2、保存QQ密码

 1 public class MainActivity extends AppCompatActivity {
 2 
 3     EditText et1=null;
 4     EditText et2=null;
 5     String sName=null;
 6     String sPassword=null;
 7     @Override
 8     protected void onCreate(Bundle savedInstanceState) {
 9         super.onCreate(savedInstanceState);
10         setContentView(R.layout.activity_main);
11         et1=(EditText) findViewById(R.id.et_name);
12         et2=(EditText) findViewById(R.id.et_password);
13 //        getUserInfo(this);//文件获取QQ账号和密码
14         spGetUserInfo(this);//sharedPreferences获取QQ账号和密码
15         if(sName!=null){
16             et1.setText(sName);
17             et2.setText(sPassword);
18         }
19     }
20     //读取QQ账号和登录密码
21     public void getUserInfo(Context conRead) {
22         String str=null;
23         FileInputStream fis=null;
24         try {
25             fis = conRead.openFileInput("data.txt");
26             byte[] b=new byte[fis.available()];
27             fis.read(b);
28             str=new String(b);
29             String[] infos=str.split(":");
30             sName=infos[0];
31             sPassword=infos[1];
32         } catch (Exception e) {
33             e.printStackTrace();
34         }finally {
35             try{
36                 fis.close();
37             } catch (Exception e) {
38                 e.printStackTrace();
39             }
40         }
41     }
42 
43     //文件保存QQ账号和登录密码
44     public static boolean saveUserInfo(Context c,String name,String password){
45         FileOutputStream fos=null;
46         try{
47             fos=c.openFileOutput("data.txt",Context.MODE_PRIVATE);
48             fos.write((name+":"+password).getBytes());
49             return true;
50         } catch (Exception e) {
51             e.printStackTrace();
52             return false ;
53         }finally{
54             try {
55                 fos.close();
56             }catch (Exception e){
57                 e.printStackTrace();
58             }//end of catch
59         }//end of finally
60     }//end of saveUserInfo
61 
62     //SharedPreferences保存QQ账号和登录密码
63     public static boolean spSaveUserInfo(Context c,String name,String password){
64         SharedPreferences sp=c.getSharedPreferences("data",Context.MODE_PRIVATE);
65         SharedPreferences.Editor edit=sp.edit();
66         edit.putString("userName",name);
67         edit.putString("password",password);
68         edit.commit();
69         return true;
70     }
71 
72     //SharedPreferences读取QQ账号和登录密码
73     public void spGetUserInfo(Context conRead) {
74         SharedPreferences sp=conRead.getSharedPreferences("data",Context.MODE_PRIVATE);
75         String name=sp.getString("userName",null);
76         String password=sp.getString("password",null);
77         sName=name;
78         sPassword=password;
79     }
80     public void btnClick(View v){
81         String name=et1.getText().toString().trim();
82         String password=et2.getText().toString().trim();
83         if(TextUtils.isEmpty(name)){
84             Toast.makeText(this,"请输入QQ账号",Toast.LENGTH_SHORT).show();
85             return;
86         }
87         if(TextUtils.isEmpty(password)){
88             Toast.makeText(this,"请输入密码",Toast.LENGTH_SHORT).show();
89         }
90         Toast.makeText(this,"登录成功",Toast.LENGTH_SHORT).show();
91 //        boolean isSaveSuccess=saveUserInfo(this,name,password);
92         boolean isSaveSuccess=spSaveUserInfo(this,name,password);
93         if(isSaveSuccess){
94             Toast.makeText(this,"保存成功",Toast.LENGTH_SHORT).show();
95         }else{
96             Toast.makeText(this,"保存失败",Toast.LENGTH_SHORT).show();
97         }
98     }
99 }

 

文件存储

标签:edit   protect   ref   puts   enc   cti   static   textutils   editor   

原文地址:https://www.cnblogs.com/Makerr/p/9904506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!