将用户上传的图片转换成二维码并保存到数据库,急!!

时间:2022-11-16 20:51:06
1.如何将图片转换成二维码
2.怎么样赋值给对象
最好是代码说明

17 个解决方案

#1


图片转二维码?二维码本身就是图片吧,你是想提取图片中的信息? http://qrcode.sourceforge.jp/

#2


楼主是想说转换成二进制吧?


File f = new File("D:\\1.jpg");
byte[] file = org.apache.commons.io.FileUtils.readFileToByteArray(f);

#3


先你要转换的图片转换成二进制,然后把二进制 在转换成二维码图片 将用户上传的图片转换成二维码并保存到数据库,急!!

#4


引用 1 楼  的回复:
图片转二维码?二维码本身就是图片吧,你是想提取图片中的信息?http://qrcode.sourceforge.jp/


我需要代码,以前没有弄过这样的,只是说不明白,五码无真相

#5


引用 2 楼  的回复:
楼主是想说转换成二进制吧?


Java code


File f = new File("D:\\1.jpg");
byte[] file = org.apache.commons.io.FileUtils.readFileToByteArray(f);


存进数据了,存进去的是:[B@156d401,不知道对不对。
还有一个问题是我在显示的时候怎么解析啊

#6


二维码 编码 、 解码 可用Google的开源项目ZXing
包下载地址

http://code.google.com/p/zxing/downloads/list

小例子
http://mazd1002.blog.163.com/blog/static/6657496520116241120197/
楼主也可以搜搜相关资料。

#7


小例子的网站打不开,公司有屏蔽某些网址
附加问题:将图片转换成为二维码存进数据库之后 如何再将二维码转换为图片展示

#8


大哥大姐大嫂子们……你们给支个招啊

#9


package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.HybridBinarizer;

/**
 * @author hwy
 *
 */
public class TestEnDeCode {

 /**
  * 
  */
 public TestEnDeCode() {
  // TODO Auto-generated constructor stub
 }

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub

 }
 //编码
 public void encode(){
  try { 
   String str = "CN:男;COP:公司;ZW:职务";// 二维码内容 
   String path = "D://hwy.png"; 
   Hashtable hints= new Hashtable(); 
   hints.put(EncodeHintType.CHARACTER_SET, "GBK"); 
   BitMatrix byteMatrix; 
   byteMatrix= new MultiFormatWriter().encode(str, BarcodeFormat.QR_CODE, 200, 200);
   File file = new File(path); 
//   writeToFile(byteMatrix, "png", file); 
  } catch (Exception e) { 
   e.printStackTrace(); 
  }
 }
 
 //解码
 public void decode(){
  try{
   Reader reader = new MultiFormatReader(); 
   String imgPath = "D://hwy.png"; 
   File file = new File(imgPath); 
   BufferedImage image; 
   try { 
    image = ImageIO.read(file); 
    if (image == null) { 
    System.out.println("Could not decode image"); 
    } 
    LuminanceSource source = new BufferedImageLuminanceSource(image); 
    BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source)); 
    Result result; 
    Hashtable hints= new Hashtable(); 
    hints.put(DecodeHintType.CHARACTER_SET, "GBK"); 
    result = new MultiFormatReader().decode(bitmap,hints); 
    String resultStr = result.getText(); 
    System.out.println(resultStr); 

   } catch (IOException ioe) { 
    System.out.println(ioe.toString()); 
   } catch (ReaderException re) { 
    System.out.println(re.toString()); 
   } 

  }catch(Exception ex){
   
  }
 }

}


偶粘出来给你,自己试试好不好用。

#10


引用 9 楼  的回复:
Java code

package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.Hy……


好的我试下,上午刚好把jar包引入了,不过转化之后的结果是啥?我不知道如何弄到页面上显示啊

#11


引用 9 楼  的回复:
Java code

package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.Hy……

zxing2.0貌似与jdk1.5不能一起使用,java.lang.UnsupportedClassVersionError: Bad version number in .class file,    zxing1.7的版本不冲突吧?

#12


二维码有很多工具可以使用

zxing就是一个,网上例子狠毒奥的,自己搜罗下吧

#13



public static byte[] imageToBytes(Image image, String format) { 
BufferedImage bImage = new BufferedImage(image.getWidth(null), 
image.getHeight(null), BufferedImage.TYPE_INT_ARGB); 
Graphics bg = bImage.getGraphics(); 
bg.drawImage(image, 0, 0, null); 
bg.dispose(); 
ByteArrayOutputStream out = new ByteArrayOutputStream(); 
try { 
ImageIO.write(bImage, format, out); 
} catch (IOException e) { 
e.printStackTrace();

return out.toByteArray(); 



//test2_to image  byte b[] = s.getBytes();//String转换为byte[] 
@RemoteMethod
public Image bytesToImage(String imgStr) { 
byte[] bytes = imgStr.getBytes();
Image image = Toolkit.getDefaultToolkit().createImage(bytes); 
try { 
MediaTracker mt = new MediaTracker(new Label()); 
mt.addImage(image, 0); 
mt.waitForAll(); 
} catch (InterruptedException e) { 
e.printStackTrace();

return image; 


转化成图片后我应该怎么显示到页面中去啊?

#14


从网上找了一个例子,最后选择直接将图片上传到服务器了,谢谢大家

#15


楼主你好!你的问题解决了没,求图片转化二维码java脚本。

#16


该回复于2015-03-27 08:40:18被管理员删除

#17


该回复于2015-03-27 08:40:18被管理员删除

#1


图片转二维码?二维码本身就是图片吧,你是想提取图片中的信息? http://qrcode.sourceforge.jp/

#2


楼主是想说转换成二进制吧?


File f = new File("D:\\1.jpg");
byte[] file = org.apache.commons.io.FileUtils.readFileToByteArray(f);

#3


先你要转换的图片转换成二进制,然后把二进制 在转换成二维码图片 将用户上传的图片转换成二维码并保存到数据库,急!!

#4


引用 1 楼  的回复:
图片转二维码?二维码本身就是图片吧,你是想提取图片中的信息?http://qrcode.sourceforge.jp/


我需要代码,以前没有弄过这样的,只是说不明白,五码无真相

#5


引用 2 楼  的回复:
楼主是想说转换成二进制吧?


Java code


File f = new File("D:\\1.jpg");
byte[] file = org.apache.commons.io.FileUtils.readFileToByteArray(f);


存进数据了,存进去的是:[B@156d401,不知道对不对。
还有一个问题是我在显示的时候怎么解析啊

#6


二维码 编码 、 解码 可用Google的开源项目ZXing
包下载地址

http://code.google.com/p/zxing/downloads/list

小例子
http://mazd1002.blog.163.com/blog/static/6657496520116241120197/
楼主也可以搜搜相关资料。

#7


小例子的网站打不开,公司有屏蔽某些网址
附加问题:将图片转换成为二维码存进数据库之后 如何再将二维码转换为图片展示

#8


大哥大姐大嫂子们……你们给支个招啊

#9


package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.HybridBinarizer;

/**
 * @author hwy
 *
 */
public class TestEnDeCode {

 /**
  * 
  */
 public TestEnDeCode() {
  // TODO Auto-generated constructor stub
 }

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub

 }
 //编码
 public void encode(){
  try { 
   String str = "CN:男;COP:公司;ZW:职务";// 二维码内容 
   String path = "D://hwy.png"; 
   Hashtable hints= new Hashtable(); 
   hints.put(EncodeHintType.CHARACTER_SET, "GBK"); 
   BitMatrix byteMatrix; 
   byteMatrix= new MultiFormatWriter().encode(str, BarcodeFormat.QR_CODE, 200, 200);
   File file = new File(path); 
//   writeToFile(byteMatrix, "png", file); 
  } catch (Exception e) { 
   e.printStackTrace(); 
  }
 }
 
 //解码
 public void decode(){
  try{
   Reader reader = new MultiFormatReader(); 
   String imgPath = "D://hwy.png"; 
   File file = new File(imgPath); 
   BufferedImage image; 
   try { 
    image = ImageIO.read(file); 
    if (image == null) { 
    System.out.println("Could not decode image"); 
    } 
    LuminanceSource source = new BufferedImageLuminanceSource(image); 
    BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source)); 
    Result result; 
    Hashtable hints= new Hashtable(); 
    hints.put(DecodeHintType.CHARACTER_SET, "GBK"); 
    result = new MultiFormatReader().decode(bitmap,hints); 
    String resultStr = result.getText(); 
    System.out.println(resultStr); 

   } catch (IOException ioe) { 
    System.out.println(ioe.toString()); 
   } catch (ReaderException re) { 
    System.out.println(re.toString()); 
   } 

  }catch(Exception ex){
   
  }
 }

}


偶粘出来给你,自己试试好不好用。

#10


引用 9 楼  的回复:
Java code

package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.Hy……


好的我试下,上午刚好把jar包引入了,不过转化之后的结果是啥?我不知道如何弄到页面上显示啊

#11


引用 9 楼  的回复:
Java code

package com.google.zxing;

import java.io.File;
import java.io.IOException;
import java.util.Hashtable;

import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.Hy……

zxing2.0貌似与jdk1.5不能一起使用,java.lang.UnsupportedClassVersionError: Bad version number in .class file,    zxing1.7的版本不冲突吧?

#12


二维码有很多工具可以使用

zxing就是一个,网上例子狠毒奥的,自己搜罗下吧

#13



public static byte[] imageToBytes(Image image, String format) { 
BufferedImage bImage = new BufferedImage(image.getWidth(null), 
image.getHeight(null), BufferedImage.TYPE_INT_ARGB); 
Graphics bg = bImage.getGraphics(); 
bg.drawImage(image, 0, 0, null); 
bg.dispose(); 
ByteArrayOutputStream out = new ByteArrayOutputStream(); 
try { 
ImageIO.write(bImage, format, out); 
} catch (IOException e) { 
e.printStackTrace();

return out.toByteArray(); 



//test2_to image  byte b[] = s.getBytes();//String转换为byte[] 
@RemoteMethod
public Image bytesToImage(String imgStr) { 
byte[] bytes = imgStr.getBytes();
Image image = Toolkit.getDefaultToolkit().createImage(bytes); 
try { 
MediaTracker mt = new MediaTracker(new Label()); 
mt.addImage(image, 0); 
mt.waitForAll(); 
} catch (InterruptedException e) { 
e.printStackTrace();

return image; 


转化成图片后我应该怎么显示到页面中去啊?

#14


从网上找了一个例子,最后选择直接将图片上传到服务器了,谢谢大家

#15


楼主你好!你的问题解决了没,求图片转化二维码java脚本。

#16


该回复于2015-03-27 08:40:18被管理员删除

#17


该回复于2015-03-27 08:40:18被管理员删除