Android的创建绘文件 [英] Android create file from drawable

查看:140
本文介绍了Android的创建绘文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有什么办法来从图像绘制文件通过 MultypartEntity 送呢?我有错误的所有时间。

  = fileURI所Uri.parse(android.resource://com.wellbread/drawable/placeholder_avatar.png);
mCurrentPhotoPath = fileUri.toString();
 java.io.FileNotFoundException:android.resource:/com.wellbread/drawable/placeholder_avatar.png:打开失败:ENOENT(没有这样的文件或目录)
十二月8日至25日:01:53.134 3663-3684 /? W / System.err的:在libcore.io.IoBridge.open(IoBridge.java:456)


解决方案

试试下面的示例code:

 可绘制可绘制= getResources()getDrawable(R.drawable.ic_action_home)。
        如果(绘!= NULL){
            位图的位图=((BitmapDrawable)抽拉).getBitmap();
            ByteArrayOutputStream流=新ByteArrayOutputStream();
            bitmap.com preSS(Bitmap.Com pressFormat.PNG,100,流);
            最后一个字节[] =的BitmapData stream.toByteArray();
            字符串URL =htt​​p://10.0.2.2/api/fileupload;
            MultipartEntityBuilder建设者= MultipartEntityBuilder.create();
            builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);            //添加二元体
            如果(的BitmapData!= NULL){
                的ContentType的contentType = ContentType.create(图像/ PNG);
                字符串文件名=ic_action_home.png;
                builder.addBinaryBody(文件的BitmapData,contentType中,文件名);
                httpEntity = builder.build();
                ...
            }
        ...
        }

Is there any way to create file from image drawable to send it via MultypartEntity? I having error all the time.

fileUri =  Uri.parse("android.resource://com.wellbread/drawable/placeholder_avatar.png");
mCurrentPhotoPath = fileUri.toString();


 java.io.FileNotFoundException: android.resource:/com.wellbread/drawable/placeholder_avatar.png: open failed: ENOENT (No such file or directory)
08-25 12:01:53.134    3663-3684/? W/System.err﹕ at libcore.io.IoBridge.open(IoBridge.java:456)

解决方案

Try the following sample code:

        Drawable drawable = getResources().getDrawable(R.drawable.ic_action_home);
        if (drawable != null) {
            Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap();
            ByteArrayOutputStream stream = new ByteArrayOutputStream();
            bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
            final byte[] bitmapdata = stream.toByteArray();
            String url = "http://10.0.2.2/api/fileupload";
            MultipartEntityBuilder builder = MultipartEntityBuilder.create();
            builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);

            // Add binary body
            if (bitmapdata != null) {
                ContentType contentType = ContentType.create("image/png");
                String fileName = "ic_action_home.png";
                builder.addBinaryBody("file", bitmapdata, contentType, fileName);
                httpEntity = builder.build();
                ...
            }
        ...
        }

这篇关于Android的创建绘文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆