gpt4 book ai didi

android - Environment.getExternalStorageDirectory() 获取硬件存储

转载 作者:行者123 更新时间:2023-12-05 00:07:31 24 4
gpt4 key购买 nike

我试图通过 Environment.getExternalStorageDirectory() 从 SD 卡获取所有文件列表,但我从硬件存储中获取了返回列表。我试过硬编码,但结果是一样的。知道是什么原因造成的吗?

我的代码

  String path = Environment.getExternalStorageDirectory().toString()+"/";
Log.d("Files", "Path: " + path);
File f = new File(path);
File file[] = f.listFiles();
Log.d("Files", "Size: "+ file.length);
for (int i=0; i < file.length; i++)
{
Log.d("Files", "FileName:" + file[i].getName());
}

返回

Path: /mnt/sdcard/
Size: 21
FileName:LOST.DIR
FileName:.android_secure
FileName:Music
FileName:Podcasts

但我的 SD 卡中没有播客等。

一半的答案:Environment.getExternalStorageDirectory() 在某些情况下获取内部内存存储。如果我尝试 String path = "/mnt/external_sd/";然后它的工作。但在其他设备中,存储在其他目录中。

最佳答案

试试这段代码,

File filepath = Environment.getExternalStorageDirectory();

File dir = new File(filepath.getAbsolutePath()
+ "/Save PIP/");
dir.mkdirs();


File file = new File(dir, System.currentTimeMillis() + ".jpg");


// Utils.showAlert("Image Saved to SD Card", "PIP Effect", "Ok", FrameActivity.this);

if (file.exists()) file.delete();
try {

output = new FileOutputStream(file);
bitmap_final.compress(Bitmap.CompressFormat.PNG, 100, output);
output.flush();
output.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

希望对您有所帮助。

关于android - Environment.getExternalStorageDirectory() 获取硬件存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15039184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com