base642photo
/**
* pic to base64Str
* @param path 读取路径
* @return
*/
public static String GetImageStr(String path) {//转化成base64字符串
String imgFile = path;
InputStream in = null;
byte[] data = null;
try {
in = new FileInputStream(imgFile);
data = new byte[in.available()];
in.read(data);
in.close();
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(data);// 返回Base64编码过的字节数组字符串
} catch (IOException e) {
logger.error("图片转换base64字符串出错"+e.getMessage());
}
return "";
}
/**
* base64Str to pic
* @param imgStr base64 字符串
* @param path 存储路径
* @return
*/
public static boolean GenerateImage(String imgStr,String path) { // 对字节数组字符串进行Base64解码并生成
if (imgStr == null) {
return false;
}
BASE64Decoder decoder = new BASE64Decoder();
try {
byte[] b = decoder.decodeBuffer(imgStr);
for (int i = 0; i < b.length; ++i) {
if (b[i] < 0) {// 调整异常数据
b[i] += 256;
}
}
File file = new File(path);
if (!file.getParentFile().exists()){
file.getParentFile().mkdirs();
}
OutputStream out = new FileOutputStream(new File(path));
out.write(b);
out.flush();
out.close();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
base642photo的更多相关文章
随机推荐
- python plt 保存jpg出错
pip install pillow就可以解决
- 剑指offer55 字符流中第一个不重复的字符(最典型错误)
典型并且基础的错误: class Solution { public: //Insert one char from stringstream void Insert(char ch) { ) res ...
- 利用Python的pyHook包来进行键盘监听
最近在实习的时候发现一件很蛋疼的事情,那就是我们组的项目因为有后台进程,所有每次运行完以后后台进程都必须要自己手动关闭,每次编译之前忘记关就会有一大堆编译错误,我就想直接弄个可以快捷键直接关闭算了 ...
- 解决AjaxFileUpload中文化/国际化的问题。
由微软官方提供的AjaxControlToolKit,在ASP.NET开发过程中,确实能够给开发者带来很多的便利,节约开发者的重复劳动.这套控件也是比较成熟的,在性能方面也不会太差,至少能够满足一般开 ...
- 怎样将Oracle数据库设置为归档模式及非归档模式
怎样将Oracle数据库设置为归档模式及非归档模式 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo lo ...
- linux优化之优化开机自启动服务
过滤出来需要的开机自启动项:chkconfig --list|grep 3:on|grep -v "crond|sshd|network|rsyslog|sysstat" ...
- 封装一个优雅的element ui表格组件
现在做后台系统用vue + elementUI 的越来越多,那element ui的 el-table 组件肯定也离不开.虽然element ui的table组件很好.但是表格和分页是分离的.每次写表 ...
- Verilog之语句位置
1.if语句.case语句必须放在always过程语句块中. 2.verilog的系统函数比如:\(display/\)monitor必须放在initial 过程语句块中.这点尚为理解为何,但必须这样 ...
- Nordic Collegiate Programming Contest 2015 B. Bell Ringing
Method ringing is used to ring bells in churches, particularly in England. Suppose there are 6 bells ...
- Selenium2启动浏览器且加载插件
一.SELENIUM2启动浏览器 注意: SELENIUM2在启动浏览器时,都是启动一个干净的没有任务 插件及cookies信息的浏览器,即使是你之前的浏览器有设置过代理,到自动化启动时,也是没有代理 ...