我正在编写一个通过蓝牙传输文件的Android应用程序。
我的问题是,什么是不连续写文件的最佳方式,这意味着文件正在外部存储目录中写入,而数据是通过蓝牙以块的形式发送的。 写作显然发生得更快,并且在接收两个块之间需要暂停。
RandomAccessFile和FileChannel对该任务有效吗?
提前致谢。
P.S: 文件大小约为10MB
答案 0 :(得分:2)
如果你去利用RandomAccessFile
,那么要注意冲洗机制,它不是手动的,它可能会给你一些时间(特别是当你把数据写得很小时)。我的建议是FileChanel
,你可以控制刷新,当然它不支持编写原始数据的直接功能,但你可以利用ByteBuffer
这样做。
答案 1 :(得分:1)
为什么要随机访问?你打算在文件中间写吗?如果不是简单的文件appender会做。而且您无需始终保持文件打开...