我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

java照片转代码 上传图片代码java

java如何把图片转换成二进制并存到oracle的blob中,求代码

import javax.imageio.ImageIO;

10年积累的做网站、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有瀍河免费网站建设让你可以放心的选择与我们合作。

import java.awt.image.BufferedImage;

import java.io.ByteArrayInputStream;

import java.io.ByteArrayOutputStream;

import java.io.File;

import java.io.IOException;

public class ImageUtils {

public static void main(String[] args) {

String str = img2Binary("C:\\Users\\hny\\Desktop\\favicon.jpg");

System.out.println(str);

binary2Img("C:\\Users\\hny\\Desktop\\favicon2.jpg", str);

}

/**

* 图片转二进制字符串

*

* @param path 图片路径

* @return

*/

public static String img2Binary(String path) {

File file = new File(path);

if (!file.exists()) {

return null;

}

try {

BufferedImage bi = ImageIO.read(file);

ByteArrayOutputStream baos = new ByteArrayOutputStream();

String suffix = getSuffix(path);

ImageIO.write(bi, suffix, baos);

byte[] bytes = baos.toByteArray();

return new sun.misc.BASE64Encoder().encodeBuffer(bytes).trim();

} catch (IOException e) {

e.printStackTrace();

}

return null;

}

/**

* 字符串转图片文件

*

* @param path      图片路径

* @param imgBinary 图片字符串

*/

public static void binary2Img(String path, String imgBinary) {

try {

File file = new File(path);

byte[] bytes1 = new sun.misc.BASE64Decoder().decodeBuffer(imgBinary);

ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);

BufferedImage bi1 = ImageIO.read(bais);

String suffix = getSuffix(path);

ImageIO.write(bi1, suffix, file);

} catch (IOException e) {

e.printStackTrace();

}

}

/**

* 获取图片后缀名

*

* @param path

* @return

*/

private static String getSuffix(String path) {

int index = path.contains(".") ? path.lastIndexOf(".") : -1;

if (index  -1) {

return path.substring(index + 1);

}

return null;

}

}

java中如何把一个图片转换成二进制流存入到类中啊?

1.将Image图像文件存入到数据库中

我们知道数据库里的Image类型的数据是"二进制数据",因此必须将图像文件转换成字节数组才能存入数据库中.

要这里有关数据的操作略写,我将一些代码段写成方法,方便直接调用.

//根据文件名(完全路径)

public byte[] SetImageToByteArray(string fileName)

{

FileStream fs = new FileStream(fileName, FileMode.Open);

int streamLength = (int)fs.Length;

byte[] image = new byte[streamLength];

fs.Read(image, 0, streamLength);

fs.Close();

return image;

}

//另外,在ASP.NET中通过FileUpload控件得到的图像文件可以通过以下方法

public byte[] SetImageToByteArray(FileUpload FileUpload1)

{

Stream stream = FileUpload1.PostedFile.InputStream;

byte[] photo = new byte[FileUpload1.PostedFile.ContentLength];

stream.Read(photo, 0, FileUpload1.PostedFile.ContentLength);

stream.Close();

return photo;

}

2.从SQL Server数据库读取Image类型的数据,并转换成bytes[]或Image图像文件

//要使用SqlDataReader要加载using System.Data.SqlClient命名空间

//将数据库中的Image类型转换成byte[]

public byte[] SetImage(SqlDataReader reader)

{

return (byte[])reader["Image"];//Image为数据库中存放Image类型字段

}

//将byte[]转换成Image图像类型

//加载以下命名空间using System.Drawing;/using System.IO;

using System.Data.SqlClient;*/

public Image SetByteToImage(byte[] mybyte)

{

Image image;

MemoryStream mymemorystream = new MemoryStream(mybyte,0, mybyte.Length);

image = Image.FromStream(mymemorystream);

return image;

}

用java将jpg转换成pdf的代码

引用pdfbox jar包

PDDocument pdDocument = new PDDocument();

BufferedImage image = ImageIO.read(f);

int width = 612;

int height = 792;

PDPage pdPage = new PDPage(new PDRectangle(width, height));

pdDocument.addPage(pdPage);

PDImageXObject pdImageXObject = LosslessFactory.createFromImage(pdDocument, image);

PDPageContentStream contentStream = new PDPageContentStream(pdDocument, pdPage);

contentStream.drawImage(pdImageXObject, 0, 0, width, height);

contentStream.close();

pdDocument.save(srcPath + candidate + File.separator

+ f.getName().substring(0, f.getName().length() - 4) + ".pdf");

pdDocument.close();

java图片旋转。如何把一张图片向左/右旋转90°给原理就行,能有几行关键的代码最好。是java不是js!

Graphics2D这个类有一个drawImage(Image img, AffineTransform xform, ImageObserver obs)方法可以实现旋转

如何用JAVA转换图像格式

关于图像转换的方式,实际上操作的是图像的字节流。我的工作中遇到过将bmp文件压缩为jpg以便于网络传输的课题。所以我这里重点介绍bmp转为jpg的一个方法。

实际上,我更喜欢使用以前sun公司内部使用的api提供的转换方法,这里使用到了两个很重要的类:

com.sun.image.codec.jpeg.JPEGCodec

com.sun.image.codec.jpeg.JPEGImageEncoder

需要注意的是,它们所属的一个jar包不存在于编译目录下,但存在于运行目录下,所以我们首先需要在jre文件下找到rt.jar并导入进来以使得编译通过。

我改写了网上的一个转换代码,所得代码如下:

此外,原sun公司开源的jar包jai_corec_1.1.3.jar也提供了图片格式的转码方式,这里也提供了转码方式,仅供参考:

备注:亲自尝试,当从jpg转bmp时会转很久很久时间(看不到尽头),转得的文件可以很大,所以建议不要使用。

利用java实现图片翻转的代码

重载渲染控件的paintComponent(Graphics g)方法.

设你当前图像实例为img,已初始化,需要旋转的角度为ang

public void paintComponent(Graphics g){

super.paintCompoent(g);

Graphics2D g2d = (Graphics2D)g;

g2d.rotate(-angle);

g2d.drawImage(img,0,0,this.getWidth(),this.getHeight(),null);

}

Graphics,Graphics2D 类中有对当前描绘环境进行仿射变换的方法,包括translate,scale,rotate,也可以直接设置仿射变换矩阵,利用这点就可以根据所需要的实现方式来进行描绘.


文章标题:java照片转代码 上传图片代码java
文章URL:http://shouzuofang.com/article/hgsshd.html

其他资讯