java图片格式转换的三段代码
作者:lijiao 时间:2023-01-22 05:43:02
网上关于java图片格式内容的文章不是很多,也不是很完整,小编搜集了三段java图片格式转换代码,分享给大家:
第一段:java图片格式转换代码
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
import javax.imageio.*;
public class FormatConversion {
public static final String JPG = "jpg";
public static final String GIF = "gif";
public static final String PNG = "png";
public static final String BMP = "bmp";
public static void main(String[] args) {
String src = "E:\\2.";
new FormatConversion().Conversion(JPG,PNG,src);//JPG转成PNG
new FormatConversion().Conversion(JPG,GIF,src);//JPG转成GIF
new FormatConversion().Conversion(JPG,BMP,src);//JPG转成BMP
//其余格式转化只要调用Conversion函数即可
}
//inputFormat表示原格式,outputFormat表示转化后的格式
public void Conversion(String inputFormat,String outputFormat,String src){
try {
File input = new File(src+inputFormat);
BufferedImage bim = ImageIO.read(input);
File output = new File(src+outputFormat);
ImageIO.write(bim, outputFormat, output);
} catch (IOException e) {
e.printStackTrace();
}
}
}
第二段:java图片格式转换代码
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class ConverterUtil {
// JGP格式
public static final String JPG = "jpeg";
// GIF格式
public static final String GIF = "gif";
// PNG格式
public static final String PNG = "png";
// BMP格式
public static final String BMP = "bmp";
public static void converter(File imgFile,String format,File formatFile)
throws IOException{
BufferedImage bIMG =ImageIO.read(imgFile);
ImageIO.write(bIMG, format, formatFile);
}
public static void main(String[] args) {
try {
// 转换为JGP
ConverterUtil.converter(new File("c:\\psb.jpg"),JPG, new File("c:\\psb2.jpg"));
// 转换为GIF
ConverterUtil.converter(new File("c:\\psb.jpg"),GIF, new File("c:\\psb2.gif"));
// 转换为PNG
ConverterUtil.converter(new File("c:\\psb.jpg"),PNG, new File("c:\\psb2.png"));
// 转换为BMP
ConverterUtil.converter(new File("c:\\psb.jpg"),BMP, new File("c:\\psb2.bmp"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
第三段:java图片格式转换代码
package cn.xsbiz.servlet.test;
import java.io.FileOutputStream;
import java.io.OutputStream;
import javax.media.jai.JAI;
import javax.media.jai.RenderedOp;
import com.sun.media.jai.codec.BMPEncodeParam;
import com.sun.media.jai.codec.ImageCodec;
import com.sun.media.jai.codec.ImageEncoder;
import com.sun.media.jai.codec.JPEGEncodeParam;
/*
* 可以实现jpg/tif/bmp 等图片之间格式得互相转换
*/
public class Test {
public static void main(String[] args) throws Exception {
/* tif转换到jpg格式 */
String input2 = "d:/img/a.tif";
String output2 = "d:/img/a.jpg";
RenderedOp src2 = JAI.create("fileload", input2);
OutputStream os2 = new FileOutputStream(output2);
JPEGEncodeParam param2 = new JPEGEncodeParam();
//指定格式类型,jpg 属于 JPEG 类型
ImageEncoder enc2 = ImageCodec.createImageEncoder("JPEG", os2, param2);
enc2.encode(src2);
os2.close();
/*tif转换到bmp格式*/
String inputFile = "d:/img/b.tif";
String outputFile = "d:/img/b.bmp";
RenderedOp src = JAI.create("fileload", inputFile);
OutputStream os = new FileOutputStream(outputFile);
BMPEncodeParam param = new BMPEncodeParam();
ImageEncoder enc = ImageCodec.createImageEncoder("BMP", os,param);
enc.encode(src);
os.close();//关闭流
//其他的一样的方式转换
}
}
上面三段代码的编写顺序,并不代表代码性能的好坏,大家可以在学习过程中,区分各个代码的利弊,从中总结经验,进一步掌握
java图片格式转换的方法。
标签:java,图片格式
0
投稿
猜你喜欢
C#中函数的创建和闭包的理解
2022-08-17 01:14:35
弹出一个带确认和取消的dialog实例
2023-11-22 06:07:13
Spring Boot加密配置文件特殊内容的示例代码详解
2023-09-18 08:47:24
解析C#中的常量及如何在C#编程中定义常量
2022-03-20 22:58:36
SpringMVC数据页响应ModelAndView实现页面跳转
2022-04-29 15:21:10
Android中回调接口的使用介绍
2022-07-24 02:45:07
线程阻塞唤醒工具 LockSupport使用详解
2023-11-29 17:16:10
那些年,我还在学习C# 学习笔记
2021-11-09 07:08:35
maven中下载jar包源码和javadoc的命令介绍
2023-07-27 04:41:01
Android 调用系统照相机拍照和录像
2023-10-30 05:40:35
合并有序数组的实现(java与C语言)
2023-08-16 13:45:40
C++编写DLL动态链接库的步骤与实现方法
2023-01-30 12:59:33
一文快速掌握Spring Cloud Stream
2023-09-01 23:09:38
android中UI主线程与子线程深入分析
2022-02-06 15:19:25
Android自定义EditText右侧带图片控件
2023-08-30 03:09:47
swagger添加权限验证保证API(接口)安全性(两种方法)
2023-11-27 18:58:33
线程池中使用spring aop事务增强
2021-08-06 06:37:19
Java常用类之System类的使用指南
2021-09-20 07:54:46
java springmvc实现验证码功能
2022-09-07 12:12:41
SQL Server中的数据复制到的Access中的函数
2021-10-05 16:06:42