android文件读写(更新中……)

1、各种类型文件
(1)android资源文件( 这些数据只能读取,不能写入。 更重要的是该目录下的文件大小不能超过1M。 )
res/raw目录     使用InputStream inStream = getResources().openRawResource(R.raw.test);
assets目录      使用InputStream inStream = getAssets().open(fileName);

(2)android数据区文件(data/data/)
FileInputStream inStream openFileInput(fileName);
FileOutputStream outStream = openFileOutput(tarPath, MODE_PRIVATE);

(3)SD卡文件
FileInputStream inStream new FileInputStream(fileName);
FileOutputStream outStream =   new   FileOutputStream(tarPath);

2、读取/写入数据 使用InputStream和OutputStream 时需捕获异常try{} catch(IOException e){},或者在函数名称后加上throws IOException
(1)返回字符串
int  size = inStream.available();
byte [] buffer =  new   byte [size];
inStream.read( buffer );
inStream.close();
String res = new String(buffer);
//String res = EncodingUtils.getString(buffer, "UTF-8"); //依文件的编码类型选择合适的编码,如果不调整会乱码
return res;

(2)存放到数据区文件中
byte[] buffer = new byte[8*1024]; //定义写入空间大小
FileOutputStream outStream = openFileOutput(tarPath, MODE_PRIVATE); // MODE_PRIVATE为Context类变量,默认值为0
int len;
while ((len =   inStream .read(buffer)) >= 0) {
      outStream .write(buffer, 0, len);
}

(3)存放到SD卡文件中
byte[] buffer = new byte[8*1024];
FileOutputStream outStream = new FileOutputStream(tarPath);
int len;
while ((len =   inStream .read(buffer)) >= 0) {
      outStream .write(buffer, 0, len);
}

(4)字符串写入文件
FileOutputStream outStream =  new FileOutputStream( tarPath);
byte [] buffer =   res.getBytes();
outStream.write(buffer);
outStream.close();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值