ページ 11

Androidでバイナリデータの読み書き

Posted: 2013年2月28日(木) 20:08
by shiro4ao
サーバーから画像をダウンロードして表示する画像ビューワーを作ろうとしています
下記のコードで送られてくるバイナリファイルを1枚受信して
ファイルへ書き出そうとしたのですが出力されたファイルが
ビットマップとして開けるものの、乱れた画像になってしまいました

正しいバイナリデータの受信方法はどうすればいいのでしょうか?

コード:

	            sockin =new BufferedInputStream(connection.getInputStream());	            
	            out = new BufferedOutputStream(openFileOutput("update", MODE_PRIVATE));

	            byte b[] = new byte[1024];
	            int len =0;
	            int size =0;
	            while(len!=-1){
	            	len=sockin.read(b);
	            	out.write(b);		            
	            }


Re: Androidでバイナリデータの読み書き

Posted: 2013年3月15日(金) 14:44
by shiro4ao
以下のようにファイルをopenFileOutputであけると
画像が乱れずに出力されました
ありがとうございました

コード:

	            sockin =new BufferedInputStream(connection.getInputStream());	            
	            out = openFileOutput("update",MODE_PRIVATE);

	            byte b[] = new byte[5024];
	            int len =0;
	            
	            while(true){
	            	len=sockin.read(b);
	            	if(len==-1)break;
	            	out.write(b,0,len);
	            }
            	out.flush();