Java 如何设置byte[]变量的值,使其能够保存所有图像?
我的手机里有照片。我想获取照片的字节[]值。我使用以下代码来获得它:Java 如何设置byte[]变量的值,使其能够保存所有图像?,java,java-me,lwuit,Java,Java Me,Lwuit,我的手机里有照片。我想获取照片的字节[]值。我使用以下代码来获得它: fcDir = (FileConnection) Connector.open("file:///"+pRoot+photoDirectory+"/", Connector.READ); if (fcDir.exists()) { Enumeration
fcDir = (FileConnection) Connector.open("file:///"+pRoot+photoDirectory+"/", Connector.READ);
if (fcDir.exists())
{
Enumeration filelist = fcDir.list("*", false);
while (filelist.hasMoreElements())
{
String fileName = (String) filelist.nextElement();
fcFile = (FileConnection) Connector.open("file:///"+pRoot+photoDirectory+"/"+fileName, Connector.READ);
dis = fcFile.openDataInputStream();
byte[] rawImg = new byte[10240];
dis.readFully(rawImg);
Image tmpImg = Image.createImage(rawImg, 0, rawImg.length);
new Fimage(tmpImg).show();
}
}
Fimage
lWiit表单成功显示,并将图像tmpImg作为其背景图像:并非所有表单都被图像占据,但仅占表单的3/4
我的问题是,我不知道在
byte[]rawImg=new byte[10240]行为参数精确设置什么数字代码>。我将参数设置为10240,但它不是很聪明。那么如何准确设置这个数字呢?FileConnection
类有一个方法fileSize()
——调用它,并将结果用作数组的大小。查看是否有方法从FileConnection对象获取文件长度——然后使用该长度初始化字节数组。