首页 银行卡识别 银行卡识别示例代码 银行卡识别[Java]

银行卡识别示例代码[Java]

作者:xiezhongpian 阅读数:2339 上传时间:2017-05-09

银行卡识别

package api.jisuapi.bankcardcognition;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

import Decoder.BASE64Encoder;
import api.util.HttpUtil;
import net.sf.json.JSONObject;

public class Recognize {

	public static final String APPKEY = "your_appkey_here";// 你的appkey
	public static final String URL = "https://api.jisuapi.com/bankcardcognition/recognize";
	public static final String pic = "11";// 图片地址

	public static void Get() {
		String result = null;
		String url = URL + "?appkey=" + APPKEY;
		Map param = new HashMap();

		try {
			param.put("pic", getBase64(pic));
			result = HttpUtil.sendPost(url, param, "UTF-8");
			JSONObject json = JSONObject.fromObject(result);
			if (json.getInt("status") != 0) {
				System.out.println(json.getString("msg"));
			} else {
				JSONObject resultarr = json.optJSONObject("result");
				Iterator itt = resultarr.keys();
				while (itt.hasNext()) {
					String key = itt.next().toString();
					String value = resultarr.getString(key);
					System.out.println(key + ":" + value);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * 图片转为Base64编码格式
	 * 
	 * @param imgFile
	 * @return
	 */
	public static String getBase64(String imgFile) {
		InputStream inputStream = null;
		byte[] data = null;
		try {
			inputStream = new FileInputStream(imgFile);
			data = new byte[inputStream.available()];
			inputStream.read(data);
			inputStream.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		// 加密
		BASE64Encoder encoder = new BASE64Encoder();
		return encoder.encode(data);
	}
}