gpt4 book ai didi

java - Android mediaPlayer setDataSource 失败并给出 IOException

转载 作者:行者123 更新时间:2023-12-02 01:20:52 27 4
gpt4 key购买 nike

这个问题很奇怪。问题是,每当我尝试使用时间戳字符串命名文件时,setDataSource 方法都会失败并给出 IOException,但如果我给出诸如包含字母表(例如“Hello.m4a”)的名称,则它可以正常工作。

以下代码给出错误:

java.io.IOException:setDataSource 失败。

outputFile =Environment.getExternalStorageDirectory()+"/Notes/Audio/AUD_";

private String getTimeStamp() {
Calendar calendar = Calendar.getInstance();


return new SimpleDateFormat("ddMMyyyyHHmmss",Locale.ENGLISH).format(calendar.getTimeInMillis())+".m4a";


}
mediaPlayer.setDataSource(outputFile+getTimeStamp());
mediaPlayer.prepare();

下面的代码工作正常

outputFile =Environment.getExternalStorageDirectory()+"/Notes/Audio/AUD_";

private String getTimeStamp() {
return "hello.m4a"
}

mediaPlayer.setDataSource(outputFile+getTimeStamp());
mediaPlayer.prepare();

我想用时间戳命名文件,以便轻松构建文件。

最佳答案

setDataSource(String path)设置要使用的数据源(文件路径)。

文件路径不得为空
否则你会得到一个错误 - 在你的情况下是 IOException

您还尝试访问不存在的文件。表达式

SimpleDateFormat("ddMMyyyyHHmmss",Locale.ENGLISH).format(calendar.getTimeInMillis())+".m4a"

创建一个包含当前时间的字符串,该字符串在您的目录中不存在。

您应该传递确切的文件路径。

关于java - Android mediaPlayer setDataSource 失败并给出 IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57731327/

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