android数据储存

总结在Android中,一共有数据存储的5种方式。今天做一个笔记的整理。关于以文件形式如何来保存数据。

1.在activity_main.xml设计好布局

2.在MainActivity.class获取用户输入的文件名和文件信息,保存文件。

?
1
2
3
4
5
6
7
8
9
10
11
public class MainActivity extends Activity {
     private Button saveBtn;
 
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super .onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
             saveBtn = (Button)findViewById(R.id.fileSaveBtn);      
             saveBtn.setOnClickListener( new saveFileListener());       
         }
}

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
   * 如果这个类不需要被继承,加个final关键字来终结它。
   */
  private final class saveFileListener implements OnClickListener{
  @Override
  public void onClick(View v) {
  EditText fileNameText = (EditText)findViewById(R.id.inputName);       
  EditText fileContentText = (EditText)findViewById(R.id.inputContext);       
  String fileName = fileNameText.getText().toString();
  String fileContent = fileContentText.getText().toString();
  FileService fileService  = new FileService(getApplicationContext());
  try {
      //保存到手机的内存上
      fileService.saveFilePrivate(fileName,fileContent);
 
  } catch (Throwable e) {
  Toast.makeText(MainActivity. this , R.string.fail, Toast.LENGTH_LONG).show();
  e.printStackTrace();
  }
?
1
2
      }
}

3.在业务层,FileSerivice处理如何保存文件内容。

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class FileService {
 
     private Context context;
 
     //生成构造器
     public FileService(Context context){
     this .context = context;
     }
 
     /**
     * 保存文件信息
     * @param fileName 文件名
     * @param fileContent 文件内容
     * @throws Throwable
     */
     public void saveFilePrivate(String fileName,String fileContent) throws Exception{
     //采用输出流对象,输出我们所需要的数据。
         //指出需要导出的位置openFileOutput(只接受文件名称,不接受文件路径,
         //用于指定文件的操作模式,行为【追加方式】,【覆盖形式】
         //文件有一个访问权限的控制,针对拥有者,针对其他用户的访问权限
         //私有操作模式:创建出来文件的只能被本应用访问,其他应用无法访问该文件。
         //             其次私有模式创建出来的文件会覆盖原有的文件内容。
         // 默认保存在,当前应用包所在的下的files文件夹下。
         FileOutputStream outputStream = context.openFileOutput(lmfcast.txt,Context.MODE_PRIVATE);
         //追加方式
         //FileOutputStream outputStream = context.openFileOutput(lmfcast.txt,Context.MODE_APPEND);
         write(fileContent, outputStream);
     }
     private void write(String fileContent, FileOutputStream outputStream)
         throws IOException {
         outputStream.write(fileContent.getBytes());
         outputStream.close();
     }
}


 

4.源码运行截图:

\ \

学习总结:

1.文件保存方式,是采用java的IO流技术。

2.文件的访问模式,分为private和append。

3.文件操作行为分为:private,apend,read,write,read+write。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值