package test;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.imageio.ImageIO;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class ImageTest {
public static void main(String[] args) {
base64StringToImage(getImageBinary());
System.out.println(getStringToImage());
}
// 读取图片转换成二进制
public static String getImageBinary() {
BASE64Encoder encoder = new sun.misc.BASE64Encoder();
File f = new File("D://yzq//005.jpg");
try {
BufferedImage bi = ImageIO.read(f);
ByteArrayOutputStream os = new ByteArrayOutputStream();
ImageIO.write(bi, "jpg", os);
byte[] bytes = os.toByteArray();
return encoder.encodeBuffer(bytes).trim();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
// 把二进制转换成图片
public static void base64StringToImage(String base64String) {
BASE64Decoder decoder = new sun.misc.BASE64Decoder();
try {
byte[] bytes1 = decoder.decodeBuffer(base64String);
ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);
BufferedImage bi1 = ImageIO.read(bais);
File w2 = new File("D://yzq//006.jpg");// 可以是jpg,png,gif格式
ImageIO.write(bi1, "jpg", w2);// 不管输出什么格式图片,此处不需改动
} catch (IOException e) {
e.printStackTrace();
}
}
// 读取文件另一种转换成二进制的方法,【求】怎么转成图片?????
public static String getStringToImage() {
File file = new File("D://yzq//005.jpg");
int i = (int) file.length();
byte[] bytes = new byte[i];
try {
InputStream input = new FileInputStream(file);
input.read(bytes);
String string = Integer.toBinaryString(bytes[0]);
return string;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.imageio.ImageIO;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class ImageTest {
public static void main(String[] args) {
base64StringToImage(getImageBinary());
System.out.println(getStringToImage());
}
// 读取图片转换成二进制
public static String getImageBinary() {
BASE64Encoder encoder = new sun.misc.BASE64Encoder();
File f = new File("D://yzq//005.jpg");
try {
BufferedImage bi = ImageIO.read(f);
ByteArrayOutputStream os = new ByteArrayOutputStream();
ImageIO.write(bi, "jpg", os);
byte[] bytes = os.toByteArray();
return encoder.encodeBuffer(bytes).trim();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
// 把二进制转换成图片
public static void base64StringToImage(String base64String) {
BASE64Decoder decoder = new sun.misc.BASE64Decoder();
try {
byte[] bytes1 = decoder.decodeBuffer(base64String);
ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);
BufferedImage bi1 = ImageIO.read(bais);
File w2 = new File("D://yzq//006.jpg");// 可以是jpg,png,gif格式
ImageIO.write(bi1, "jpg", w2);// 不管输出什么格式图片,此处不需改动
} catch (IOException e) {
e.printStackTrace();
}
}
// 读取文件另一种转换成二进制的方法,【求】怎么转成图片?????
public static String getStringToImage() {
File file = new File("D://yzq//005.jpg");
int i = (int) file.length();
byte[] bytes = new byte[i];
try {
InputStream input = new FileInputStream(file);
input.read(bytes);
String string = Integer.toBinaryString(bytes[0]);
return string;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}