在Android 10中,可以使用以下步骤在内部存储中创建自定义目录并存储数据:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
并在运行时请求该权限:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE);
}
File directory = new File(Environment.getExternalStorageDirectory(), "MyDirectory");
if (!directory.exists()) {
directory.mkdirs();
}
这将在内部存储的根目录下创建一个名为"MyDirectory"的目录。
File file = new File(directory, "myfile.txt");
try {
FileOutputStream fos = new FileOutputStream(file);
fos.write(data.getBytes());
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
这将在自定义目录中创建一个名为"myfile.txt"的文件,并将数据写入其中。
需要注意的是,Android 10引入了Scoped Storage机制,限制了对外部存储的直接访问。因此,上述方法适用于访问应用的内部存储空间。如果需要访问外部存储空间,可以使用MediaStore API或SAF(Storage Access Framework)。
推荐的腾讯云相关产品:腾讯云对象存储(COS) 腾讯云对象存储(COS)是一种安全、高可靠、低成本、高扩展性的云端存储服务,适用于存储大量非结构化数据,如图片、音视频、文档等。您可以使用腾讯云COS SDK来访问和管理存储在COS上的数据。
产品介绍链接地址:腾讯云对象存储(COS)
领取专属 10元无门槛券
手把手带您无忧上云