用xml来存储图片


//将jpg转码,并转成String
private String readImage() {
BufferedInputStream bis = null;
byte[] bytes = null;
try {
try {
bis = new BufferedInputStream(new FileInputStream(ix));
bytes = new byte[bis.available()];
bis.read(bytes);
} finally {
if (bis != null) {
bis.close();
}

}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return new BASE64Encoder().encodeBuffer(bytes);
}

//将图片转码后存在xml里面
public void imageToXml() {
String xml = "" + "<image>" + "<name>" + ix + "</name>" + "<content>"
+ readImage() + "</content></image>";
try {
XMLHelper.write(XMLHelper.parseText(xml), ix + ".xml");
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

//从xml读取图片:
public void xmlToImage(String rename) {
Document d;
String name = null;
String content = null;
try {
d = XMLHelper.parse(ix);
name = XMLHelper.getNodeValue(d, "/image/name");
content = XMLHelper.getNodeValue(d, "/image/content");
saveImage(rename.equals("") ? name : rename, content);
} catch (DocumentException e) {
e.printStackTrace();
}
}

public void xmlToImage() {
xmlToImage("");
}

private void saveImage(String filename, String content) {
try {
DataOutputStream dos = null;
try {
byte[] bs = new BASE64Decoder().decodeBuffer(content);
dos = new DataOutputStream(new BufferedOutputStream(
new FileOutputStream(filename)));
dos.write(bs);
} finally {
dos.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值