一直以来都特别喜欢落网的音乐,最近用JAVA写了一个小程序,可以根据期刊和歌曲编号去下载音乐。本程序仅供学习使用。

目前只写了一个初步的代码:

public class DownloadMusic {

	private static int count = 1;

	public static void main(String[] args) throws Exception {

		while(count < 16){
String path = null;
if(count < 10){
path = "http://mp3-cdn2.luoo.net/low/luoo/radio957/0"+count+".mp3";
}else{
path = "http://mp3-cdn2.luoo.net/low/luoo/radio957/"+count+".mp3";
} //获取URL对象
URL url = new URL(path);
//根据URL打开链接
URLConnection connection = url.openConnection(); //从连接处获取输入流对象
InputStream inputStream = connection.getInputStream(); System.out.println("链接成功!"); File file = new File("E:/mp3/957"); if(!file.exists()){
file.mkdir();
} if(count < 10){
IOUtils.download("E:/mp3/957/0"+count+".mp3", inputStream);
}else{
IOUtils.download("E:/mp3/957/"+count+".mp3", inputStream);
} count++;
} }
}

其中,专辑需要指定,然后固定下载15首音乐。

再给出IOUtils的代码:

import java.io.FileOutputStream;
import java.io.InputStream; public class IOUtils { /**
*
* @param path 需要下载的文件路径,包括后缀名
* @param inStream 输入流
*/
public static void download(String path,InputStream inStream){
FileOutputStream fs;
try {
fs = new FileOutputStream(path);
byte[] buffer = new byte[1204]; int byteread = 0; while ((byteread = inStream.read(buffer)) != -1) {
fs.write(buffer, 0, byteread);
}
System.out.println(path + "保存成功!"); } catch (Exception e) {
e.printStackTrace();
} }
}

感兴趣的朋友可以在这个代码上改进,使之功能更加全面。

源码下载地址:http://java520.top/article/3457.html

如何用JAVA的IO流下载落网音乐?的更多相关文章

  1. JAVA的IO流下载音乐

    public class DownloadMusic { private static int count = 1; public static void main(String[] args) th ...

  2. java的IO流

    java的IO流继承四大抽象类分别是字节流 inputStream outputStream与字符流 read write.怎么理解记忆很重要. 直接连接读写对象的是结点流,例如对文件读取字节类的名字 ...

  3. Java基础——IO流

    今天刚刚看完java的io流操作,把主要的脉络看了一遍,不能保证以后使用时都能得心应手,但是最起码用到时知道有这么一个功能可以实现,下面对学习进行一下简单的总结: IO流主要用于硬板.内存.键盘等处理 ...

  4. 【Java】IO流简单分辨

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827509.html Java的IO流体系十分庞大,并且体系层次稍复杂,很容易记混或记错.在此,我把平时经常用 ...

  5. Java - 文件(IO流)

    Java - 文件 (IO)   流的分类:     > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter     ...

  6. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  7. JAVA中IO流总结

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42119261 我想你对JAVA的IO流有所了解,平时使用的 ...

  8. 第15章-输入/输出 --- 理解Java的IO流

    (一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...

  9. Java基础IO流(二)字节流小案例

    JAVA基础IO流(一)https://www.cnblogs.com/deepSleeping/p/9693601.html ①读取指定文件内容,按照16进制输出到控制台 其中,Integer.to ...

随机推荐

  1. Oracle中的多表查询(笛卡尔积原理)

    本次预计讲解的知识点 1. 多表查询的操作.限制.笛卡尔积的问题: 2. 统计函数及分组统计的操作: 3. 子查询的操作,并且结合限定查询.数据排序.多表查询.统计查询一起完成各个复杂查询的操作: 一 ...

  2. vue——安装并新建项目

    一.对于vue的安装: 1.安装vue之前先安装node,https://nodejs.org/zh-cn/download/,我装的是windows64位的: 2.下载好了之后就可以按照正常顺序安装 ...

  3. 用yii2给app写接口(下)

    上一节里我们讲了如何用Yii2搭建一个能够给App提供数据的API后台应用程序.那么今天我们就来探讨下授权认证和通过API接口向服务器提交数据以及如何控制API接口返回那些数据,不能返回那些数据. 授 ...

  4. C语言_了解下结构体指针

    在C语言中几乎可以创建指向任何类型的指针,包括用户自定义的类型.当然也可以指向结构体,先看一个小案例: #include <stdio.h> #include <string.h&g ...

  5. 《精通android网络开发》--使用Socket实现数据通信

    No1: 网络传输应用通常使用TCP.IP或UDP这三种协议实现数据传输.在传输数据的过程中,需要通过一个双向的通信连接实现数据的交互.在这个传输过程中,通常将这个双向链路的一端称为Socket,一个 ...

  6. BroadcastReceiver工作过程

    动态注册过程: ContextWrapper.registerReceiver--> ContextImpl.registerReceiver--> ContextImpl.registe ...

  7. 原生javascript 的MAP使用

    var map = {}; // Map map = new HashMap();map[key] = value; // map.put(key, value);var value = map[ke ...

  8. uploadify上传文件(1)--下载

    最近在给公司做一个软件版本迭代管理的软件,是一个asp.net网站开发项目.利用mvc框架,前端采用bootstrap,数据库是MySQL,数据库访问利用EF框架. 软件需求是公司软件开发项目多,版本 ...

  9. C语言结构体定义的几种方法

    什么是结构体? 在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类.结构体可以被声明为变量.指针或数组等,用以实现较复杂的数据 ...

  10. 剑指offer 第九天

    35.数组中的逆序对 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出 ...