android文件存储的五种方式简介

android的存储方式分为,SharedPreferences、文件存储数据 、数据库存储数据 、ContentProvider存储数据、网络存储,其中文件存储有以下几种模式,我们用一个小例子来说明:

首先我们新建一个android项目,预计显示界面如下:161503_Sv1I_2502566.jpg

然后再main函数中获取相应view,并且获得输入的数据,得到上下文对象:

private void init() {
  button= (Button)findViewById(R.id.Button);
  button.setOnClickListener(new ButtonClickListener());
 }
 private class ButtonClickListener implements View.OnClickListener{
  private EditText filename;
  private EditText fileview;
  @Override
  public void onClick(View v) {
   filename =(EditText)findViewById(R.id.filename);
   fileview = (EditText)findViewById(R.id.view);
   String name = filename.getText().toString();
   String view = fileview.getText().toString();
   FileService service = new FileService(getApplicationContext());
     }
  }
}

接下来我们进行存储操作,新建一个类里面用来写存储方法:

首先写一个pravate的方法用mode_provate来存储数据:

public void save(String name, String view) throws Exception {
  FileOutputStream outStream = context.openFileOutput(name, Context.MODE_PRIVATE);
  outStream.write(view.getBytes());
  outStream.close();
 }

怎么指导文件是否保存成功了呢?这里我们捕获下异常,并对异常进行处理,

try {
    service.save(name,view);
    Toast.makeText(getApplicationContext(), "保存数据", 3).show();
   } catch (Exception e) {
    // TODO Auto-generated catch block
    
    Toast.makeText(getApplicationContext(), "保存失败", 3).show();
    e.printStackTrace();
   }

打印输出语句保存成功与否,保存的文件只有程序本身有权限,再次写入会删除原有文件重新创建,如果想要其他程序可以对文件进行读写操作,可以使用openFileOutput(name, Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE);

只要原因是因为Context.MODE_PRIVATE    =  0
Context.MODE_APPEND    =  32768
Context.MODE_WORLD_READABLE =  1
Context.MODE_WORLD_WRITEABLE =  2
l当他们两个以二进制存储的时候分别对应01,10.相加后为11,所有java可以对其进行识别。

转载于:https://my.oschina.net/u/2502566/blog/528142

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值