gpt4 book ai didi

java - 设备上的 Android 存储路径不一样?

转载 作者:太空狗 更新时间:2023-10-29 14:16:34 25 4
gpt4 key购买 nike

Hej 社区!我想使用 File = Environment.getexternaldirectory() 或类似的东西从设备的存储中读取 mp3 文件。我得到一个空指针exc。当我尝试从那里获取文件时。在我的手机中,我在文件资源管理器中查找了文件的路径。它说 storage\emulated\0 和我的代码一样。那么,有什么问题吗?提前致谢。

最佳答案

使用此方法检索文件列表。

public List<File> getMP3Files(String directory) {
List<File> files = new ArrayList<File>();
File folder = new File(directory);
for (File file : folder.listFiles()) {
if (file.isFile()) {
if (file.getName().endsWith(".mp3") || file.getName().endsWith(".MP3")) {
files.add(file);
}
}
}
return files;
}

例如,如果您的 .mp3 文件位于:“/storage/emulated/0”,您只需要。

String directoryPath=Environment.getExternalStorageDirectory().getPath(); // path /storage/emulated/0/                  
List<File> list = getMP3Files(directoryPath);

如果您的 .mp3 在其他位置,例如我的 .mp3 文件在:“/storage/emulated/0/Music/Overkill”

 String mp3Directory = "/Music/Overkill";
String directoryPath=Environment.getExternalStorageDirectory().getPath() + mp3Directory;
List<File> list = getMP3Files(directoryPath);

//print in LogCat the list of .mp3:
for (File file : list) {
Log.i("MP3 File name", file.getName());
}

关于java - 设备上的 Android 存储路径不一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21392155/

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