File

本文介绍了Android应用中内部和外部文件的读写操作方法,包括使用FileOutputStream进行写操作和FileInputStream进行读操作的过程。特别关注了如何处理SD卡上的文件,并确保具备相应的权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内部文件:文件存在于data/data/包名/files

  写:文件输出流:FileOutPutStream  openFileOutPut(文件名,权限),调用write()方法将字符串信息以字节数组输出,flush(),close().

  读:文件输入流:FileInPutStream file  openFileInPut(文件名)

  字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte      []bu=new Byte[1024];

获取数据的容器:int length:

统计每次读取的长度,

While((length==file.read(bu))!=-1){

bs.write(bu,0,length);

bs.flush();

}

File().close();

bs.close();

TextView.setText(bs.toString());

外部文件:SD卡上的文件

注意:不管读还是写,都要添加对应的权限,还要判断SD卡是否存在

读取权限:read_externalstorage ()

          Write_externalstorage()  

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

创建文件输出流:FileOutputStream fs=new FileOutputStream(file);

fs.write(字符串.getByte());

Fs.flush();

Fs.close();

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

文件输入流:FileOutputStream fi=new FileOutputStream ();

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

后续步骤跟内部文件的读取一样

字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte[] buffer = new Byte[1024]; 获取数据的容器,int length:统计每次读取数据的长度,while( ( length = file.read(buffer) )!=-1){

     bs.write(buffer,0,length);

     bs.flush()

}

     bile.close();

     bs.close()

   TextView.setText(bs.toString());

}

内部文件:文件存在于data/data/包名/files

  写:文件输出流:FileOutPutStream  openFileOutPut(文件名,权限),调用write()方法将字符串信息以字节数组输出,flush(),close().

  读:文件输入流:FileInPutStream file  openFileInPut(文件名)

  字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte      []bu=new Byte[1024];

获取数据的容器:int length:

统计每次读取的长度,

While((length==file.read(bu))!=-1){

bs.write(bu,0,length);

bs.flush();

}

File().close();

bs.close();

TextView.setText(bs.toString());

外部文件:SD卡上的文件

注意:不管读还是写,都要添加对应的权限,还要判断SD卡是否存在

读取权限:read_externalstorage ()

          Write_externalstorage()  

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

创建文件输出流:FileOutputStream fs=new FileOutputStream(file);

fs.write(字符串.getByte());

Fs.flush();

Fs.close();

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

文件输入流:FileOutputStream fi=new FileOutputStream ();

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

后续步骤跟内部文件的读取一样

字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte[] buffer = new Byte[1024]; 获取数据的容器,int length:统计每次读取数据的长度,while( ( length = file.read(buffer) )!=-1){

     bs.write(buffer,0,length);

     bs.flush()

}

     bile.close();

     bs.close()

   TextView.setText(bs.toString());

}内部文件:文件存在于data/data/包名/files

  写:文件输出流:FileOutPutStream  openFileOutPut(文件名,权限),调用write()方法将字符串信息以字节数组输出,flush(),close().

  读:文件输入流:FileInPutStream file  openFileInPut(文件名)

  字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte      []bu=new Byte[1024];

获取数据的容器:int length:

统计每次读取的长度,

While((length==file.read(bu))!=-1){

bs.write(bu,0,length);

bs.flush();

}

File().close();

bs.close();

TextView.setText(bs.toString());

外部文件:SD卡上的文件

注意:不管读还是写,都要添加对应的权限,还要判断SD卡是否存在

读取权限:read_externalstorage ()

          Write_externalstorage()  

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

创建文件输出流:FileOutputStream fs=new FileOutputStream(file);

fs.write(字符串.getByte());

Fs.flush();

Fs.close();

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

文件输入流:FileOutputStream fi=new FileOutputStream ();

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

后续步骤跟内部文件的读取一样

字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte[] buffer = new Byte[1024]; 获取数据的容器,int length:统计每次读取数据的长度,while( ( length = file.read(buffer) )!=-1){

     bs.write(buffer,0,length);

     bs.flush()

}

     bile.close();

     bs.close()

   TextView.setText(bs.toString());

}内部文件:文件存在于data/data/包名/files

  写:文件输出流:FileOutPutStream  openFileOutPut(文件名,权限),调用write()方法将字符串信息以字节数组输出,flush(),close().

  读:文件输入流:FileInPutStream file  openFileInPut(文件名)

  字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte      []bu=new Byte[1024];

获取数据的容器:int length:

统计每次读取的长度,

While((length==file.read(bu))!=-1){

bs.write(bu,0,length);

bs.flush();

}

File().close();

bs.close();

TextView.setText(bs.toString());

外部文件:SD卡上的文件

注意:不管读还是写,都要添加对应的权限,还要判断SD卡是否存在

读取权限:read_externalstorage ()

          Write_externalstorage()  

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

创建文件输出流:FileOutputStream fs=new FileOutputStream(file);

fs.write(字符串.getByte());

Fs.flush();

Fs.close();

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

文件输入流:FileOutputStream fi=new FileOutputStream ();

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

后续步骤跟内部文件的读取一样

字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte[] buffer = new Byte[1024]; 获取数据的容器,int length:统计每次读取数据的长度,while( ( length = file.read(buffer) )!=-1){

     bs.write(buffer,0,length);

     bs.flush()

}

     bile.close();

     bs.close()

   TextView.setText(bs.toString());

}内部文件:文件存在于data/data/包名/files

  写:文件输出流:FileOutPutStream  openFileOutPut(文件名,权限),调用write()方法将字符串信息以字节数组输出,flush(),close().

  读:文件输入流:FileInPutStream file  openFileInPut(文件名)

  字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte      []bu=new Byte[1024];

获取数据的容器:int length:

统计每次读取的长度,

While((length==file.read(bu))!=-1){

bs.write(bu,0,length);

bs.flush();

}

File().close();

bs.close();

TextView.setText(bs.toString());

外部文件:SD卡上的文件

注意:不管读还是写,都要添加对应的权限,还要判断SD卡是否存在

读取权限:read_externalstorage ()

          Write_externalstorage()  

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

创建文件输出流:FileOutputStream fs=new FileOutputStream(file);

fs.write(字符串.getByte());

Fs.flush();

Fs.close();

If(Envirment.getExternalStorageState().equals(Envirment.MEDIA_MOUNTED)){

文件输入流:FileOutputStream fi=new FileOutputStream ();

写:方法1File file=new File(Envirment.getExternalStorageDirctory(),”  文件名(写后缀)”);

方法2File file=new File(Envirment.getExternalStorageDirctory()+”/文件名(写后缀)”);

后续步骤跟内部文件的读取一样

字节数组输出流:ByteArrayOutPutStream bs,字节数组:byte[] buffer = new Byte[1024]; 获取数据的容器,int length:统计每次读取数据的长度,while( ( length = file.read(buffer) )!=-1){

     bs.write(buffer,0,length);

     bs.flush()

}

     bile.close();

     bs.close()

   TextView.setText(bs.toString());

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值