我尝试从url获取图片然后保存到本地,但是图片显示不正常,而且貌似图片大小比原图会大了一点,这是为什么?
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
public class DownloadImage {
public static void main(String[] args){
BufferedReader bufferedReader = null;
FileOutputStream fileOutputStream = null;
URL imageUrl = null;
String str = null;
URLConnection urlConnection = null;
InputStream urlInputStream = null;
byte[] byteArray = new byte[1024];
File imageFile = null;
try {
bufferedReader = new BufferedReader(new FileReader("resources/imageURL")); //这个文件的内容是url地址
while((str = bufferedReader.readLine()) != null){
imageUrl = new URL(str);
urlConnection = imageUrl.openConnection();
urlConnection.connect();
urlInputStream = urlConnection.getInputStream();
imageFile = new File("resources/image/" + str.substring(str.lastIndexOf("/")+1));
if(!imageFile.exists()) imageFile.createNewFile();
fileOutputStream = new FileOutputStream(imageFile);
while(urlInputStream.read(byteArray) != -1){
fileOutputStream.write(byteArray);
}
fileOutputStream.close();
urlInputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Done!");
}
}
}
阿波罗的战车
慕妹3146593
相关分类