如何将microedition.lcdui.Image对象保存到存储中?

时间:2017-10-09 18:02:50

标签: java-me midlet

如何将Image(microedition.lcdui.Image)对象保存到存储中?

我有这个Image对象:

Image outImg; //Contains image data

我尝试使用下面的代码将其保存到存储空间但没有成功:

int[] rgb = new int[240*320];
outImg.getRGB(rgb, 0, 240, 0, 0, 240, 320);
ByteArrayOutputStream bout = new ByteArrayOutputStream();
DataOutputStream dout = new DataOutputStream(bout);
dout.writeInt(240);
dout.writeInt(320);

for (int i = 0; i < rgb.length; i++) {
    dout.writeInt(rgb[i]);
}
bytes = bout.toByteArray();

FileConnection fcOut = (FileConnection) Connector.open("file:///root1/img.png", Connector.READ_WRITE);
if (!fcOut.exists()) {
    fcOut.create();
}
DataOutputStream out = fcOut.openDataOutputStream();
out.write(bytes);

我搜索了一个解决方案,但没有找到任何有用的东西。我怎样才能做到这一点?

或者,有没有办法将Image对象转换为字节数组?所以我可以使用DataOutputStream将字节数组写入内存。

0 个答案:

没有答案