android学习札记第7章之IO流二

2025-10-19 11:15:07

1、RandomAccessFile

(双向:既能读又能写,还可以移动下标,不属于IO流,可以对File进行操作)

①读写文件中的字节数据,用下标读写文件中的指定位置的字节值。

②创建对象:RandomAccessFile raf=new RandomAccessFile(路径字符串或File对象,"rw");//不存在直接新建空文件

android学习札记第7章之IO流二

2、方法:

write(int b):写入int型的b,输出int转为“十六进制”中四个字节的末尾1个字节。(强转成byte)

write(byte[] buffer):输出数组中全部的字节值。

write(byte[] buffer,int from,int num):输出数组中的从from开始的num个字节值。

read():读取一个字节值,然后前补三个0字节,变成int类型,读取结束返回-1。

read(byte[] buffer): 根据指定数组长度,读取一批字节值,并放入指定的数组buffer中,并返回放入数组的字节数量, 当读取结束返回-1。

seek(int i):将指针移动到指定位置。

getFilePointer():获得当前所在的位置的下标。

writeInt(int i):输出int类型的4个字节值

writeDouble(double d):输出int类型的8个字节值

writeUTF(String s):先输出2个字节值,表示字符串的字节长度,再输出字符串的字节值。

readInt():读取4个字节值转成int

readDouble():读取8个字节值转成int

readUTF(): 先读取2个字节值,来确定字符串的字节长度,再读取这些字节值,转成String。读取结束再读取会 出现EOF读取结束异常。

android学习札记第7章之IO流二

android学习札记第7章之IO流二

3、练习:

对文件进行加密、解密。

android学习札记第7章之IO流二

1、①父类:java.io.OutputStream/InputStream(抽象类)

②子类:java.io.FileInputStream/FileOutputStream(直接与文件相接,读写文件中的数据。不可定位指针的位置,只能顺序读写。)

③创建对象:

FileOutputStream out=new FileOutputStream(文件或字符串);//不论文件是否存在,都会新建空文件。

FileOutputStream out=new FileOutputStream(文件或字符串,true);//不存在,会新建空文件;则存在直接追加数据。

android学习札记第7章之IO流二

2、方法:

拥有抽象类OutputStream/InputStream的方法。

①OutputStream:

write(int b):写入int型的b,输出int转为“十六进制”中四个字节的末尾1个字节。(强转成byte)。

write(byte[]):输出数组中全部的字节值。

write(byte[],int from,int num):输出数组中的从from开始的num个字节值。

flush():刷出缓存,缓存满了自动刷出,不满需要手动刷出。

②InputStream:

read():单字节读取。

read(byte[]):多字节读取。

available():获取剩余的可读取字节量。

android学习札记第7章之IO流二

android学习札记第7章之IO流二

3、练习:

将原文件复制成目标文件。

android学习札记第7章之IO流二

android学习札记第7章之IO流二

1、①提供内存缓冲区数组,提高“单字节”读写效率,缓存需要flush刷出,刷出后离开缓冲区。

②创建对象:

BufferedInputStream bis=new BufferedInputStream(new FileInputStream(from));//内部数组默认长度:8192字节。

BufferedInputStream bis=new BufferedInputStream(new FileInputStream(from),16*1024);//内部数组长度:16K。

android学习札记第7章之IO流二

2、练习:

将原文件复制成目标文件。

android学习札记第7章之IO流二

1、①读写固定字节格式的数据。

②创建对象:

DataOutputStream out=new DataOutputStream(想接的流);。

android学习札记第7章之IO流二

2、方法:

①DataOutputStream:

writeInt(int i):输出int类型的4个字节值。

writeDouble(double d):输出int类型的8个字节值。

writeUTF(String s):先输出2个字节值,表示字符串的字节长度,再输出字符串的字节值。

②DataInputStream:

readInt(int i):读取4个字节值转成int。

readDouble(double d):读取8个字节值转成int。

readUTF(String s): 先读取2个字节值,来确定字符串的字节长度,再读取这些字节值,转成String。读取结 束再读取会出现EOF读取结束异常。

android学习札记第7章之IO流二

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢