gpt4 book ai didi

java - ReadableByteChannel 和 FileOutputStream 只提供从 Soundcloud 下载的文件的 28 字节

转载 作者:行者123 更新时间:2023-12-01 06:17:50 25 4
gpt4 key购买 nike

我正在使用 JavaReadableByteChannelFileOutputStream 尝试从 Soundcloud 中提取 wav 文件:

public static void wavTest() {

URL website = null;
try {
website = new URL("https://api.soundcloud.com/tracks/123456789/download?client_id=12lhfdh5k55....283);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ReadableByteChannel rbc = null;
try {
rbc = Channels.newChannel(website.openStream());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
FileOutputStream fos = null;
try {
fos = new FileOutputStream("/Users/name/Desktop/test.wav");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

粘贴到浏览器和完整轨道下载时,该 URL 有效,但无论我尝试使用上面的代码下载哪些轨道,该文件始终具有以下属性:

28 字节(磁盘上 4 KB)

显然我做错了什么。有人可以帮助我或为我指明正确的方向吗?

最佳答案

查看实际收到的数据。也许它是一个错误响应(例如,它响应一个仅包含 invalid request info<error>401 - Unauthorized</error> 的文档)或其他一些状态响应。

假设情况确实如此,可能是您发送的 ID 或 session key 存在问题,或者您忘记了请求中的一些必需的 HTTP header (我对 SoundCloud API 不是特别熟悉)。

关于java - ReadableByteChannel 和 FileOutputStream 只提供从 Soundcloud 下载的文件的 28 字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19853766/

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