我在Android设备上从c:\illuxplain
上传图片。我已经成功上传了图片,但是当我打开它时,它没有显示。
图片大小在存储空间中不为零,并显示扩展名.png
。为什么不显示图片?这是将文件写入存储空间的正确方法吗?
这是我的 servlet代码
for (Part part : request.getParts()) {
String fileName = extractFileName(part);
File file = new File(fileSaveDir, fileName);
InputStream input = part.getInputStream();
byte[] buffer = new byte[1024];
int len = input.read();
FileOutputStream out = new FileOutputStream(file);
while (len!=-1) {
out.write(buffer,0,len);
len = input.read(buffer);
}
out.close();
input.close();
}
答案 0 :(得分:2)
您在以下行中使用了错误的read
方法:
int len = input.read();
这应该是:
int len = input.read(buffer);
答案 1 :(得分:1)
示例代码:
byte data[] = new byte[1024];
long total = 0;
int count;
while ((count = input.read(data)) != -1) {
total += count;
output.write(data, 0, count);
}
output.flush();
output.close();