从某网站下载MP3的例子。为安全起见,将网站信息匿了。
package tools.download;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class DownloadMP3 {
private static final String SITE = ...
private static final String SAVE_PATH = ...
private static int BUFFER_SIZE = 1024 * 8;
public boolean downloadSrc(String strURL, String saveFile) {
// strURL validation ....
BufferedInputStream bis = null;
FileOutputStream fos = null;
byte[] buf = new byte[BUFFER_SIZE];
try {
File dir = new File(saveFile);
if (!(dir.exists()) && !(dir.isDirectory())) {
boolean created = dir.mkdirs();
if (created) {
System.out.println("创建文件夹成功!");
} else {
System.out.println("创建文件夹失败!");
}
}
int lastIndex = strURL.lastIndexOf("/");
saveFile = saveFile + strURL.substring(lastIndex + 1);
URL url = new URL(strURL);
URLConnection con = url.openConnection();
long len = con.getContentLength();
con.connect();
bis = new BufferedInputStream(con.getInputStream());
fos = new FileOutputStream(saveFile);
int size = 0;
int progress = 0;
while ((size = bis.read(buf)) != -1) {
// System.out.print("_");
fos.write(buf, 0, size);
progress++;
System.out.print(".");
if (progress % 80 == 0) {
System.out.print("\n");
progress = 0;
}
}
fos.close();
bis.close();
File fsaved = new File(saveFile);
long fileLen = fsaved.length();
if (progress > 0)
System.out.print("\n");
System.out.println(len);
System.out.println(fileLen);
if (len == fileLen) {
return true;
} else {
return false;
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (bis != null) {
try {
bis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return false;
}
/**
* Specific download
*/
public void downloadSite() {
final int V = 34;
final int MAX_TUNES = 20;
int total = 0, failed = 0, success = 0;
for (int i = 1; i <= MAX_TUNES; i++) {
String strURL = ...
String saveFile = ...
System.out.println(strURL);
boolean successful = downloadSrc(strURL, saveFile);
total ++;
if (successful) {
success++;
System.out.println("Done - " + saveFile + "\n");
} else {
failed++;
System.out.println("Failed.\n");
}
}
System.out.println("Total: " + total + "; succeed: " + success + "; failed: " + failed);
}
public static void main(String[] args) {
DownloadMP3 dlmp3 = new DownloadMP3();
dlmp3.downloadSite();
}
}
分享到:
相关推荐
mid-wav文件 226 实例154 获取多媒体详细信息列表 227 5.2 MP3、WAV播放 228 实例155 带记忆功能的MP3播放器 228 实例156 自动播放的MP3播放器 231 实例157 学校体操定时音乐播放 233 ...
用VFW.h库中的MCI函数开发的简单mp3播放器工具,实现在顺序播放某个目录中所有mp3音乐文件功能,可以在播放列表中单击文件名选择播放文件,可以播放前一个、后一个音乐文件等功能。为想学习这方面编程的朋友提供一个...
---暂停并从 ----- -- - 上一曲------ 头开始播放 | 显示时间 | | | ---开始和暂停 ----------- 下一曲------ -------------------------------------- Linux内核完全注释附 如题,我没看。 MFC+消息循环贴图-...
要先下载mugen的主程序,然后: MUGEN有六个文件夹,chars就是放人物的地方(支持文件夹),stages是游戏背景的地方可以自己放进去,font是游戏字体也就是A,B,C,D.... 1234567890和时间无限的字体,可以用工具改 ...
embed src="yin/01.mp3" _fcksavedurl=""yin/01.mp3"" _fcksavedurl=""yin/01.mp3"" type="application/x-mplayer3" loop="true" ShowStatusBar="true" ShowPositionControls="false" EnableContextMenu="false">...
定义与程序打开的文件,创建一种关联,双击文件,即可使用相关的程序打开文件,类似于安装完某程序后,自动将相关文件的打开程序定义为自己,就好比现在好多的播放器软件,安装后,会关联MP3文件、MPEG或RMVB等。...
参考了网上的例子,一并现行感谢! 2、背景图可以根据b2.jpg修改,替换此文件即可,修改背景图 3、抽奖时的背景音乐,可以替换n.mp3 4、一等奖默认抽一次,每次显示3个;二等奖默认抽2次,每次显示6个;三等奖默认抽...
第十一步:单独设置,指定某人中某个奖项。打开软件 按ctrl+tab 键 即可。 最多可设三个。(如图:抽奖10) 奖前面填写 要中的奖项 比如:优秀奖 。谁前面写..... 记得如果是按姓名方式抽取时 不要写电话哦! 调节...
一般我们下载时要注意下载文件的扩展名,音乐视频常见:mp3,wma,wav等,图片:jpg,gif,bmp等,特别要注意的扩展名是:exe,scr,rar,zip等,病毒很多都捆绑在里面。 例子:一个压缩文件捆绑纸牌游戏。 4、病毒 ...
例子是新版mpqeditor,样例图和某人提供的火影图都能打开,能看到一堆没有文件名的文件,其中就有隐藏的mp3,改成mp3扩展名就能正常播放。这种方式应该没什么弊端(除了得不到正确文件名),如果和火龙结合,用上述...
� A ndroid 在设计初期就考虑了与现其有业务的融合,改变以往从计算机为主改成从手机使用为导向。新 生应用如:G oogle 地图及其衍生应用、 GMail 、 GTalk 等。 � GPS 卫星导航功能,手机照相, MP3 ,蓝芽等均...
而运行程序,如你想上网下载某个时间下载东西就可以利用该功,选择相应的下载工具即可。 "取消选择"说明选择了该项后就不会有“关机”“重启”“注销”的功能。也就是说有些时候你只需要起提醒,或打开某一程序即可...
网管教程 从入门到精通软件篇 ★一。★详细的xp修复控制台命令和用法!!! 放入xp(2000)的光盘,安装时候选R,修复! Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的...
可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。 广义的嵌入式无非几种:传统的什么51、AVR、PIC称做嵌入式微控制器;ARM是嵌入式微处理器;DSP;FPGA。 客观的讲,工作需求量上...
Zcg_3DLabel.ZIP 一个3D标签控件(15KB) 38,easyftp.ZIP 一个FTP客户端控件,可以用来编写自己的FTP下载软件(43KB) 39,mp3play.EXE 一个可以播放MP3编码文件的控件,DEMO版(264KB) 40,mp3enc....
Zcg_3DLabel.ZIP 一个3D标签控件(15KB) 38,easyftp.ZIP 一个FTP客户端控件,可以用来编写自己的FTP下载软件(43KB) 39,mp3play.EXE 一个可以播放MP3编码文件的控件,DEMO版(264KB) 40,mp3enc....
Zcg_3DLabel.ZIP 一个3D标签控件(15KB) 38,easyftp.ZIP 一个FTP客户端控件,可以用来编写自己的FTP下载软件(43KB) 39,mp3play.EXE 一个可以播放MP3编码文件的控件,DEMO版(264KB) 40,mp3enc....
<3> 音频支持和音乐回放(music playback):支持WAV, MP3, MP2, MP1 an d OGG 音频文件格式(audio file formats),支持MO3, IT, XM, S3M, MTM, MO D and UMX 音乐文件格式(music file formats),支持压缩流的...