之前从网上找的代码,将图片转化为二维码保存到数据库中(数据库中的值:[B@156d401)
请问能不能写程序将二维码转化为图片呢?如果可以最好贴出代码鉴赏

解决方案 »

  1.   

    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){
       
      }
     }}网上找到例子,偶粘出来给你,自己试试好不好用。
    包可以从
    http://code.google.com/p/zxing/downloads/list
    下载
      

  2.   


    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; 
    } 从数据库取出数据后转化成图片,然后我该怎么样将图片显示到页面上?
      

  3.   

    页面上要有个显示图片控件,比如
    <img src="d:/pic.jpg">
    这时把就把图片保存在对应目录