我试图使用webservice获取图像并保存到SD卡。该文件保存但我无法打开文件。一旦我打开文件它说“无法加载图像”。以下是我的代码。文件没有正确保存
httpTransport.call(SOAP_ACTION, envelope);
Object response = envelope.getResponse();
test = response.toString();
Blob picture = org.hibernate.Hibernate.createBlob(test.replaceAll("-", "").getBytes());
String FILENAME = "voucher1.jpg";
File root = Environment.getExternalStorageDirectory();
FileOutputStream f = new FileOutputStream(new File(root, FILENAME));
InputStream x=picture.getBinaryStream();
int size=x.available();
byte b[]= new byte[size];
x.read(b);
f.write(b);
f.close();
请帮忙。谢谢
测试内容是什么,为什么要用''替换' - '? – njzk2 2012-02-22 09:43:41
它是一个字节[],我将其转换为webservice中的字符串并在此处返回值。我替换' - '的原因是因为当我检查测试字符串..默认情况下是' - '... – 2012-02-22 09:46:41
这可能是一个问题。 byte [] - > String - > byte []不起作用,如果您使用不同的编码,我很可能。另外,创建Blob的意义何在?如果你删除所有的连字符,你会丢失文件的一部分 – njzk2 2012-02-22 13:37:47