/** * 下载文件接口,将下载的文件内容写入filename中 * * @param url 连接URL地址 * @param params 参数项 * @param filename 待写入文件的文件名(可带路径) * @return 结果json字符串 */ public static String download(String url, Map<String, String> params, String filename) { Object ret = download(url, params); if (ret instanceof String) { if (Configure.isNeedChkSign() && !Signature.verifyMAC(Signature.jsonToMap((String) ret))) { return Configure.SIGN_ERROR_RESULT; } else { return (String) ret; } } else if (ret instanceof byte[]) { FileOutputStream fos = null; try { File file = new File(filename); fos = new FileOutputStream(file); fos.write((byte[]) ret); } catch (Exception e) { return Configure.FILE_ERROR_RESULT; } finally { if (fos != null) try { fos.close(); } catch (Exception e) { } } return Configure.SUCCESS_RESULT; } else { return Configure.SYS_ERROR_RESULT; } }
/** * 下载文件接口,直接返回文件二进制内容 * * @param url 连接URL地址 * @param params 参数项 * @return 若下载成功,返回下载到的文件的字节数组(byte[]类型);若下载失败,返回出错信息json字符串(String类型) */ public static Object download(String url, Map<String, String> params) { Object ret = null; try { IRequestService requestor = IRequestService.getInstance(); ret = requestor.sendPost(url, params); if ((ret instanceof String) && Configure.isNeedChkSign() && !Signature.verifyMAC(Signature.jsonToMap((String) ret))) { return Configure.SIGN_ERROR_RESULT; } } catch (IOException e) { ret = Configure.TXN_ERROR_RESULT; } catch (Exception e) { ret = Configure.SYS_ERROR_RESULT; } return ret; }