在开发中会遇到上传图片到服务端的需求,需要把图片转换Base64 格式的字符串。
/**
* 图片装换成Base64字符串* @param path 路径
* @return Base64字符串
*/
public static synchronized String imgToBase64String(String path)
{
File file = new File(path);
ByteArrayOutputStream imgData = new ByteArrayOutputStream();
if (!"null".equals(path) && file.exists()) {
try {
InputStream in = new FileInputStream(file);
byte[] buffer = new byte[1024];
int count = 0;
while (( count = in.read(buffer)) > 0) {
imgData.write(buffer, 0, count);
}
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
try {
imgData.close();
} catch (IOException e) {
e.printStackTrace();
}
String imgStr = new String(Base64.encode(imgData.toByteArray(), Base64.DEFAULT));
return imgStr;
}