根据URL获取文件,以采集网络图片为例
来源:互联网 发布:python中的函数 编辑:程序博客网 时间:2024/05/21 17:20
此方法可以采集图片,音频,视频等资源
public String downLoadFromUrl(String urlStr, String fileName, String savePath) throws IOException {
URL url = new URL(urlStr);HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 设置超时间为3秒
conn.setConnectTimeout(5 * 1000);
// 防止屏蔽程序抓取而返回403错误
conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
// 得到输入流
InputStream inputStream = conn.getInputStream();
HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
String type = HttpURLConnection.guessContentTypeFromStream(inputStream);
int flagIndex = type.indexOf("/");
String imageType = type.substring(flagIndex + 1);
if (!imageType.equals("gif")) {
imageType = "jpg";
}
// 获取自己数组
byte[] getData = readInputStream(inputStream);
// 文件保存位置
File saveDir = new File(savePath);
if (!saveDir.exists()) {
saveDir.mkdir();
}
File file = new File(saveDir + File.separator + fileName + "." + imageType);
FileOutputStream fos = new FileOutputStream(file);
fos.write(getData);
if (fos != null) {
fos.flush();
fos.close();
}
if (inputStream != null) {
inputStream.close();
}
log.error("info:" + savePath + "/" + fileName + "." + imageType + " download success");
return imageType;
}
public byte[] readInputStream(InputStream inputStream) throws IOException {
byte[] buffer = new byte[1024];
int len = 0;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
while ((len = inputStream.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
bos.close();
return bos.toByteArray();
}
阅读全文
1 0
- 根据URL获取文件,以采集网络图片为例
- 根据图片的网络URL获取Bitmap
- 根据url下载网络图片
- 根据图片url获取图片尺寸
- 根据图片url获取图片尺寸
- 根据图片url获取图片尺寸
- Android中如何根据图片url路径来获取网络图片
- Android中如何根据图片url路径来获取网络图片
- Android中如何根据图片url路径来获取网络图片
- 根据网络url图片路径获取图片字节数组工具类
- 根据url多线程请求载入网络图片
- ios根据URL获得网络图片
- Android—根据URL获取Bitmap图片
- 根据URL获取图片的bitmap
- 根据uri获取图片文件
- Wininetdll函数库:根据url获取缓存文件
- 根据Url获取手机文件真实路径
- Volley网络请求流程分析(以图片请求为例)
- spring自定义标签
- Template
- 互联网+背景下,外贸行业的思维转变过程
- SEVERE: Error listenerStart Unsupported major.minor version 52.0
- UML统一建模语言汇总
- 根据URL获取文件,以采集网络图片为例
- SQLsever[日常问题] 多元数据的分组与排序
- 【Anaconda】Anaconda 镜像使用帮助
- A链接标签点击不会触发任何行为的写法
- https://www.toutiao.com/a6457425756212429325/?tt_from=mobile_qq&utm_campaign=client_share&app=news_a
- 工作需要了解的方法论-问题分析与解决
- 使用宏的方式, 批量修改word中图片的大小
- ROS 遇到的问题
- Handler导致内存泄漏