在Android中,如果我想将文件从一个地方复制到另一个地方:
如何检查我是否拥有正确的Manifest权限?我知道你在清单中包含权限,但是假设我们不知道我们是否包括它 - 如果我们缺少权限,我们如何捕获异常?
如何验证我对源文件的读取权限?
如何验证我是否具有目的地的写入权限?
如何验证是否有足够的空间来执行写入?
如何验证写入是否成功执行?
答案 0 :(得分:1)
如果我们缺少权限,我们如何捕获异常?
这取决于许可。
如何验证我对源文件具有读取权限?
File
上的
如何验证我是否具有目的地的写入权限?
File
上的
如何验证是否有足够的空间来执行写入?
您不能,因为在您进行计算时,由于设备上其他应用的行为,该值可能已更改。
您可以使用methods on StatFs
来确定可用空间,但我会给自己一个重要的缓冲区。
如何验证写入是否成功执行?
首先在getFD().sync()
之后FileOutputStream
之后flush()
之前调用close()
,以确保所有字节都写入磁盘并且不被内核缓存文件系统实现。对于大多数情况来说,这就足够了。
我们也欢迎您阅读内容并根据内存中的内容进行验证,以确认该文件似乎包含了应有的内容。