如何使用Java在线下载mp3文件?

2024-02-22

我使用以下方法下载 mp3 文件:http://online1.tingclass.com/lesson/shi0529/43/32.mp3 http://online1.tingclass.com/lesson/shi0529/43/32.mp3

但我收到以下错误:

java.io.FileNotFoundException: http:\online1.tingclass.com\lesson\shi0529\43\32.mp3 (文件名、目录名或卷标语法不正确)

  public static void Copy_File(String From_File,String To_File)
  {   
    try
    {
      FileChannel sourceChannel=new FileInputStream(From_File).getChannel();
      FileChannel destinationChannel=new FileOutputStream(To_File).getChannel();
      sourceChannel.transferTo(0,sourceChannel.size(),destinationChannel);
      // or
      //  destinationChannel.transferFrom(sourceChannel, 0, sourceChannel.size());
      sourceChannel.close();
      destinationChannel.close();
    }
    catch (Exception e) { e.printStackTrace(); }
  }

然而,如果我手动从浏览器中执行此操作,文件就在那里,我想知道为什么它不起作用,以及正确的方法是什么?

Frank


使用老式 Java IO,但您可以将其映射到您正在使用的 NIO 方法。关键是 URLConnection 的使用。

    URLConnection conn = new URL("http://online1.tingclass.com/lesson/shi0529/43/32.mp3").openConnection();
    InputStream is = conn.getInputStream();

    OutputStream outstream = new FileOutputStream(new File("/tmp/file.mp3"));
    byte[] buffer = new byte[4096];
    int len;
    while ((len = is.read(buffer)) > 0) {
        outstream.write(buffer, 0, len);
    }
    outstream.close();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用Java在线下载mp3文件? 的相关文章

随机推荐

  • 在多处理器机器上执行 C++ 程序

    我出于研究目的用 C 开发了一个程序 需要几天时间才能完成 现在我在我们的实验室 8 核服务器机器上执行它以快速获得结果 但我看到机器只为我的程序分配一个处理器 并且它的处理器使用率保持在 13 即使我将进程优先级设置为高级别并与 8 核相
  • 如何将edittext中的数据存储到android sqlite数据库中?

    我是 Android 的新开发人员 我想使用 sqlite 将用户数据存储在数据库中 对于该设计 xml 文件用户名作为 edittext 并采用按钮 在填写所有文本字段后 单击按钮时所有数据都存储在数据库中 并在屏幕上显示这些数据 这些都
  • 从不同文件夹渲染部分(不共享)

    如何让视图从不同的文件夹渲染部分 用户控件 在预览版 3 中 我曾经使用完整路径调用 RenderUserControl 但升级到预览版 5 后 这不再可能了 相反 我们得到了 RenderPartial 方法 但它没有提供我正在寻找的功能
  • QLDB 中的分页

    我注意到 QLDB 不支持LIMIT or SKIP实现基本分页所需的查询参数 将来是否会支持此功能 或者是否有其他方法在 QLDB 中实现分页 目前不支持 LIMIT SKIP QLDB 专为数据摄取而构建 我们建议在另一个专门构建的数据
  • 最佳 MySQL 配置 (my.cnf)

    以下是我的默认生产MySQL配置文件 my cnf 用于以 InnoDB 作为默认存储引擎的纯 UTF 8 设置 server bind address 127 0 0 1 innodb file per table default cha
  • 在 PHP 中使用另一个条件的变量

    我有这个代码 if isset GET act display gt display templates install main html if isset POST proceed prefix POST prefix if GET a
  • 使用@Transactional和Spring模板有什么区别?

    如果我在 DAO 中使用 Transactional 我的所有 EntityManager 查询是否都会通过提交和关闭进行封装 或者我需要使用Spring模板 JPA模板 Hibernate模板 使用 Transactional和Sprin
  • 使用 Genymotion 和 Charles 进行 SSL 代理?

    我正在尝试让 Genymotion Virtualbox 中托管的 x86 Android 模拟器 与 Charles 代理一起使用 我已成功使用网关 ip 虚拟机配置为使用仅主机适配器 fwiw 将设备连接到设备 wifi 代理设置中的代
  • 从 Excel 单元格读取十进制值(在 C# 中)

    从包含小数的 Excel 单元格读取值时 我遇到以下问题 如果我在 Excel 的单元格中输入 9 95 CellValue InnerText在 C 中返回 9 9499999999999993 我怎样才能获得输入的实际值 即 9 95
  • 使用 geotools api 在 WGS84 crs 中线段和点之间的最短距离

    在geotools中 您可以使用Geometry类中的距离函数找到两个几何图形之间的距离 几何有一个点子类 但没有几何的线段子类 然而 有一个 LineSegment 类派生自 LineString 它不是 Geometry 类的子类 我尝
  • JAX-RS 非常适合实现 REST。在 Java 中使用什么来调用 REST 服务? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 理想情况下 我正在寻找类似 JAX RS 的东西 使用注释来描述我想要调用的服务 但允许调用使用其他技术 不是 JAX RS 实现的 RE
  • javascript(类java)哈希码实现

    以下代码是我对相当通用的 javascript 哈希代码实现的尝试 我计划将此代码与哈希表实现 例如 jshashtable 结合使用 该哈希表实现使用 hashCode 如果为键定义 我尝试严格遵守 java 的数字 字符串和数组的哈希码
  • 何时/为何在 for 循环上使用 map/reduce

    我第一次接触 JavaScript 中的对象操作 我有一个问题 想知道是否有人可以回答 当我想要操作一个对象时 我可以在一些嵌套的 for 循环范围内执行某些操作 但是 JavaScript 中内置了一些函数 例如 map reduce f
  • 在 Wildfly 上激活 JaxbAnnotationModule

    我正在尝试在 Wildfly 8 上设置一个 REST 服务 该服务返回带有自定义枚举值的 JSON 我知道 Wildfy 使用 Jackson 2 3 进行连载 我还知道 当使用 Jackson ObjectMapper 注册 JaxbA
  • leiningen: 缺少超级 pom

    如果我启用 clojure couchdb 或 swank clojure 那么lein deps失败 因为 org apache maven super pom jar 2 0 丢失 dependencies org clojure cl
  • 为什么我的自定义 `::swap` 函数没有被调用?

    这里我写一个代码片段看看是哪个swap会被调用 但结果都不是 什么也没有输出 include
  • iOS,我应该在项目中设置什么体系结构设置?

    对我的应用程序进行一些细微修改并将其加载到最新的 xcode 版本后 我注意到以下设置 我应该删除armv6吗 下拉菜单中的选项显示armv7 armv7s 我应该设置什么 如果你真的不想支持 iPhone3G和更低 不3GS 然后你可以删
  • 在 ios 9.1 中使用什么来代替 UIScreen.mainScreen().applicationFrame 进行 swift ?

    这可能是一个简单的问题 但由于我是初学者 最好问一下 正如标题所说 我应该使用什么来代替UIScreen mainScreen applicationFrame因为它在 9 0 中已被弃用 如果可能的话 如果你能给我提供一个样本或例子 那就
  • 有没有办法用茉莉花验证间谍执行的顺序?

    我有两个对象已被 Jasmine 设置为间谍 spyOn obj spy1 spyOn obj spy2 我需要验证调用spy1在致电之前来spy2 我可以检查它们是否都被调用 expect obj spy1 toHaveBeenCalle
  • 如何使用Java在线下载mp3文件?

    我使用以下方法下载 mp3 文件 http online1 tingclass com lesson shi0529 43 32 mp3 http online1 tingclass com lesson shi0529 43 32 mp3