我从服务器端客户端传送图像文件

我从服务器端客户端传送图像文件

本文介绍了我从服务器端客户端传送图像文件,在读取图像文件我得到这个问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用以下code从套接字读取图像文件。它从服务器读取的所有字节,因为服务器和Android机文件的大小相同。当我打开这个文件,它不会打开文件并生成错误是损坏或文件太大。

 公共位图fileReceived(InputStream为)
        抛出FileNotFoundException异常,IOException异常{        位图位图= NULL;
        字符串BASEDIR = Environment.getExternalStorageDirectory()getAbsolutePath()。
        字符串文件名=a.png;
        字符串imageInSD = BASEDIR +文件分割符+文件名;
            的System.out.println(imageInSD);
        如果(是!= NULL){
            FOS的FileOutputStream = NULL;
            BOS的BufferedOutputStream = NULL;
            尝试{                FOS =新的FileOutputStream(imageInSD);
                BOS =新的BufferedOutputStream(FOS);
                字节[] = aByte新的字节[1024];
                INT读取动作;                而(真){
                    读取动作= is.​​read(aByte);                    bos.write(aByte,0,读取动作);
                如果(is.available()== 0)
                    打破;
                }                bos.flush();
                bos.close();
          // is.reset();        //这里给出错误即--- SkImageDe codeR ::厂返回null
               位= BitmapFactory.de codeFILE(imageInSD);            }赶上(IOException异常前){
                //做异常处理
                Log.i(IMSERVICE,异常);
            }
        }        返回位图;
    }


解决方案

不要使用的这一点,就不能可靠地工作!

该文档的状态:

Do it like:

while ( (bytesRead = is.read(aByte)) > 0 ) {
    bos.write(aByte, 0, bytesRead);
}

这篇关于我从服务器端客户端传送图像文件,在读取图像文件我得到这个问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-28 07:34