posts - 70,comments - 408,trackbacks - 0

package common;
/**
 * 网络图片扫描程序
 *
 */

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FilterInputStream;

import javax.imageio.ImageIO;

import com.asprise.util.ocr.OCR;
import java.net.*;


public class ImageWord {
 //获得图片数字
 public static String word(String str) {
  try {
   File file = new File(str);
   BufferedImage image = ImageIO.read(file);
   String s = new OCR().recognizeCharacters(image);
   return s;
  } catch(Exception e) {
   return "";
  }
 }
 //删除临时目录的图片
 public static void deleteImage() {
  try {
   String path = Thread.currentThread().getContextClassLoader().getResource("")+"temp/";
   String filePath = path.substring(6,path.length());
   File file = new File(filePath);
   File[] files = file.listFiles();
   for(int i=0;i<files.length;i++) {
    try {
     //系统文件不删除
     if(!(files[i].getName()).equalsIgnoreCase("Thumbs.db")) {
      if(files[i].isFile()) {
       files[i].delete();
      } else if(files[i].isDirectory()) {
       files[i].delete();
      } else {
       files[i].delete();
      }
     }
    } catch (RuntimeException e) {
     Print.print("ImageWordError","DELETE FILE ERROR");
    }
   }
  } catch (RuntimeException e) {
   Print.print("ImageWordError","图片删除失败Error!"+e.toString());
  }
 }
 //保存图片到临时目录
 public static String saveImage(String image) {
  try {
   if(image.length()>1024) {
    return null;
   }
   if(image.equals("")) {
    return null;
   }
   String fileName = image.substring(image.lastIndexOf("/")+1,image.length());
   String path = Thread.currentThread().getContextClassLoader().getResource("")+"temp/"+fileName;
   String filePath = path.substring(6,path.length());
   URL  url = null;
   try {
     url = new URL(image);
   } catch(Exception e) {
     Print.print("ImageWordError","URL ERROR");
     return null;
   }
   FilterInputStream in=(FilterInputStream) url.openStream();
   File fileOut=new File(filePath);
   FileOutputStream out=new FileOutputStream(fileOut);
   byte[] bytes=new byte[1024];
   int c;
   while((c=in.read(bytes))!=-1) {
    out.write(bytes,0,c);
   }
   in.close();
   out.close();
   return filePath;
  } catch(Exception e) {
   Print.print("ImageWordError","图片保存失败Error!"+e.toString());
   return null;
  }
 }
}

 

posted on 2007-03-21 10:02 我心依旧 阅读(1377) 评论(4)  编辑  收藏

FeedBack:
# re: 自己写的处理图片的几个方法
2007-05-11 23:44 | 寶露o(∩_∩)o
请问这个包是哪里的啊?  回复  更多评论
  
# re: 自己写的处理图片的几个方法
2007-05-12 09:01 | 我心依旧
com.asprise.util.ocr.OCR?
一个开源包,是提取图片中的相关字符的.  回复  更多评论
  
# re: 自己写的处理图片的几个方法
2008-05-04 06:47 | 我爱浪子
@我心依旧
这个开源包的下载地下呢?

先就要介绍这个的,,可你没有写!  回复  更多评论
  
# re: 自己写的处理图片的几个方法[未登录]
2008-09-12 12:01 | 阿甘
你好,能给我这开源包和教程吗?我正在做一OA项目,要用到OCR,谢谢
我的EMAIL:gl74gs48@tom.com  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: