1 FileInputStream fis......
BufferedReader br =new BufferedReader(New InoutStreamReader(fis));
StringBuilder sb=new StringBuidler(" ");
String line;
while((line=sb.readLine())!=null){
sb.append()
}
BufferedReader 建立在字节流基础上,并且它有一个readLine ()方法可以一次读取一行,返回读取的字符串,为了写入可以使用stringBuilder的append()方法,这两个通常放在一起使用
当然也可以使用byte[]bbuf =new byte[1024];while((hasRead=in.read(bbuf,o,bbuf.lenght))!=-1){
ou.write(bbuf,0,hasRead)}
2)将字符串写入到输出流:
void write(byte[] b)
将 b.length 个字节从指定的 byte 数组写入此输出流。
void write(byte[] b, int off, int len)
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。
abstract void write(int b)
将指定的字节写入此输出流。
将 b.length 个字节从指定的 byte 数组写入此输出流。
void write(byte[] b, int off, int len)
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。
abstract void write(int b)
将指定的字节写入此输出流。
有些输出流提供write(String s)方法,可以将字符串直接写入。如果没有该方法可以使用write(s.getBytes())将字符串转化为字节数组
比如将字符串写到targetFile文件; RnadomAccessFile raf=new RandomAccessFile(targerFile,"rw");
raf.seek(target.length()); raf.write(s.getBytes()) ; raf.close();
<uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"/>
< uses-permission android:name="androd.permission.WRITE_EXTERNAL_STORAGE"/>
< uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
< uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />//无关紧要
< uses-permission android:name="androd.permission.WRITE_EXTERNAL_STORAGE"/>
< uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
< uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />//无关紧要
打不开sdcard是因为这是一个链接文件,注意看后面的文件权限是lrwxr....,l代表的是链接文件,后面其实已经写出来它所指向的目录 了,/storage/sdcard0 。所以可以理解为你打不开的sdcard就是sdcard0的一个快捷方式,要打开可以直接打开下面的 /storage/sdcard0。
|