版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fhm6100411074/article/details/88219325
package com.example.demo.module.pic;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.*;
import java.net.URL;
import java.net.URLConnection;
import java.util.UUID;
public class UplaodPicByUrl {
public static void main(String[] args) {
customPicSize();
}
public static void customPicSize() {
String picUrl = "http://07imgmini.eastday.com/mobile/20190302/2019030217_61adaa3afab44d0fba034865460d2f65_7346_mwpl_05500201.jpg";
InputStream inputStream = null;
BufferedInputStream bufferedInputStream = null;
BufferedOutputStream bufferedOutputStream = null;
try {
URL url = new URL(picUrl);
URLConnection urlConnection = url.openConnection();
inputStream = urlConnection.getInputStream();
String realPath = "F:/aa";
File dirs = new File(realPath);
if (!dirs.exists()) {
boolean isOK = dirs.mkdirs();
if (isOK) {
System.out.println("创建文件夹成功");
} else {
System.out.println("创建文件夹失败");
}
}
bufferedInputStream = new BufferedInputStream(inputStream);
Image image = ImageIO.read(bufferedInputStream);
//把图片处理为210x160的尺寸
BufferedImage bufferedImage = new BufferedImage(210, 160, BufferedImage.TYPE_INT_RGB);
bufferedImage.getGraphics().drawImage(image, 0, 0, 210, 160, null);
//输出流
String fileType = "jpg";
String fileUUID = UUID.randomUUID().toString().replace("-", "");
String outFilePath = realPath + "/" + fileUUID + "." + fileType;
bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(outFilePath));
ImageIO.write(bufferedImage, fileType, bufferedOutputStream);
System.out.println("图片地址:" + outFilePath);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (inputStream != null) {
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (bufferedInputStream != null) {
try {
bufferedInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (bufferedOutputStream != null) {
try {
bufferedOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
//计算图片的宽和高的 核心代码段
try {
URL url = new URL(picUrl);
URLConnection urlConnection = url.openConnection();
urlConnection.setRequestProperty("Content-Encoding", "gzip");
BufferedImage bufferedImage = ImageIO.read(urlConnection.getInputStream());
width = bufferedImage.getWidth();
height = bufferedImage.getHeight();
} catch (Exception e) {
}