InputStream流读取外部链接数据

本文介绍了一种从外部链接读取图片并将其转换为fastdfs格式上传到本地服务器的方法。通过使用InputStream读取远程图片资源,将其转换为byte数组,以便后续处理。

因业务需要,外部调用本项目接口的时候将外链图片链接发送,本项目需要将图片读取,并使用fastdfs方式上传至本地服务器

项目框架:jfinal

1,第一种方式为使用FileKit.download方法,最终发现在服务器端,文件路径出现问题。

2,使用inputstream流的方式进行读取文件,并放入byte数组中

代码如下

                InputStream in = null;
				byte[] in2b = null;
				try {
					URL uri = new URL(path);
					URLConnection connection = uri.openConnection();
					in = connection.getInputStream();
					ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
					byte[] buff = new byte[100];//此处鉴于图片大小,可自行调整
					int rc = 0;
					while ((rc = in.read(buff, 0, 100)) > 0) {
						swapStream.write(buff, 0, rc);
					}
					//放入byte数组中
					in2b = swapStream.toByteArray();
				} catch (Exception e1) {
		            e1.printStackTrace();
		        } finally {
		            if (in != null) {
		                try {
		                    in.close();
		                } catch (IOException e1) {
		                }
		            }
		        }

再使用数组进行各种数据操作即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值