Java 只有在sd卡中写入文件时,才能将RandomAccessFile文件用于rw模式
下面是start.mp4文件的SD卡路径。我可以在读取模式下获取此文件,但无法在Java 只有在sd卡中写入文件时,才能将RandomAccessFile文件用于rw模式,java,android,randomaccessfile,Java,Android,Randomaccessfile,下面是start.mp4文件的SD卡路径。我可以在读取模式下获取此文件,但无法在rw模式下打开。我还授予了运行时权限。它抛出一个异常: /storage/3263-6232/piyush/Download/start.mp4: open failed: EACCES (Permission denied) 代码: 在上面的代码中,我将sdcardpath带到sdcard中存在的文件中。 之后,每当我尝试使用RandomAccessFile在outputstream中打开该文件时,就会出现Fil
rw
模式下打开。我还授予了运行时权限。它抛出一个异常:
/storage/3263-6232/piyush/Download/start.mp4: open failed: EACCES (Permission denied)
代码:
在上面的代码中,我将sdcardpath
带到sdcard中存在的文件中。
之后,每当我尝试使用RandomAccessFile
在outputstream中打开该文件时,就会出现FilenotFound异常
:
/storage/3263-6232/piyush/Download/start.mp4: open failed: EACCES (Permission denied)
您的
清单
是否如下所示?
使用权限
标记需要位于应用程序标记之外
...
...
...
PS:如果您正在使用Post M设备进行测试,请确保在对您的文件执行任何操作之前,先请求
写入外部存储权限。您的清单是否如下所示?
使用权限
标记需要位于应用程序标记之外
...
...
...
PS:如果您使用Post M设备进行测试,请确保在对您的文件执行任何操作之前,先获得写入外部存储的权限。将您的存储位置更改为/STORAGE/3263-6232/Android/data/
/files将解决您的问题
上述路径仅对相关的第三方应用程序具有写入权限,在其他地方,您可以读取文件,但不能写入新文件
或者,您需要应用存储访问框架来获得写入权限
有关更多详细信息,请访问
将您的存储位置更改为/Storage/3263-6232/Android/data/
/文件将解决您的问题
上述路径仅对相关的第三方应用程序具有写入权限,在其他地方,您可以读取文件,但不能写入新文件
或者,您需要应用存储访问框架来获得写入权限
有关更多详细信息,请访问
因此您没有对该文件的写入权限。定义“给定运行时权限”。为什么你需要对一个.mp4文件进行写访问呢?我需要对文件进行加密并更改文件的前10位。我可以做同样的事情时,做了在内存,但不是在sd卡@EJPSo您没有对该文件的写入权限。定义“给定运行时权限”。为什么你需要对一个.mp4文件进行写访问呢?我需要对文件进行加密并更改文件的前10位。我可以做同样的事情时,做了在内存,但不是在sd卡@EJP
/storage/3263-6232/piyush/Download/start.mp4: open failed: EACCES (Permission denied)