import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
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 = "F:\\IdeaProjects\\xyzhjk\\xyzhjk-ui\\public\\map";
ArrayList<String> fileNameList = new ArrayList<>();
getAllFileName(src,fileNameList);
for (int i = 0; i < fileNameList.size(); i++) {
String path = fileNameList.get(i);
if(path.indexOf(".jpg") > -1){
path = path.replace(".jpg","") + ".";
System.out.println(path);
new FormatConversion().Conversion(JPG, PNG, path);//JPG转成PNG
// 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函数即可
}
/**
* 获取某个文件夹下的所有文件
*
* @param fileNameList 存放文件名称的list
* @param path 文件夹的路径
* @return
*/
public static void getAllFileName(String path, ArrayList<String> fileNameList) {
//ArrayList<String> files = new ArrayList<String>();
boolean flag = false;
File file = new File(path);
File[] tempList = file.listFiles();
for (int i = 0; i < tempList.length; i++) {
if (tempList[i].isFile()) {
System.out.println("文 件:" + tempList[i]);
fileNameList.add(tempList[i].toString());
// fileNameList.add(tempList[i].getName());
}
if (tempList[i].isDirectory()) {
// System.out.println("文件夹:" + tempList[i]);
getAllFileName(tempList[i].getAbsolutePath(),fileNameList);
}
}
return;
}
//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();
}
}
}