Java:从UTF8字符串创建可绘制

Java:从UTF8字符串创建可绘制,java,android,image,drawable,Java,Android,Image,Drawable,我有以下代码: public void onSuccess(String response) { Log.i("EOH",response); Drawable d = null; Object content=response.getBytes(); InputStream is = (InputStream)content; d = Drawable.createFromStream(is, "src"); ImageView captcha

我有以下代码:

public void onSuccess(String response) {
    Log.i("EOH",response);
    Drawable d = null;
    Object content=response.getBytes();
    InputStream is = (InputStream)content;
    d = Drawable.createFromStream(is, "src");

    ImageView captcha = (ImageView)findViewById(R.id.imageView2);
    captcha.setImageDrawable(d);
}
下面是我得到的响应字符串(来自LogCat):

08-12 11:33:52.223:INFO/EOH(10244):巴布亚新几内亚

2008-12 11:33:52.223:INFO/EOH(10244):08-12 11:33:52.223: 信息/EOH(10244):������ IHDR������D������2.������%Wé����IDAThíSgÏÙM²\R 08-12 11:33:52.223:INFO/EOH(10244):*h=(xß-¥:Ni}ñ¥:}S+µ3ötÕÕ Äî#$7ÙÝd¾H'
£²$8ÝÏ«äÙßîóï{��¦,²Ê2)Ë��Alpha,²<代码>Ê2)Ë��阿尔法,²Ê2)Ë��阿尔法,dgÎMý0uýýýýýý/|þýýýýýýCUW��lëcëaëIVRKþ>wKëgX]góY¼ 12{zB\o«&0��t] oìììèè}§èYXièwq;�� ä 08-12 11:33:52.223:INFO/EOH(10244): I.}#Bh+»ñ=ÒNF3Ø}��-ÞSíë
AáN]*ô5q·¨0þW.SÌ美元§åJ.阿尔菲特尔;P¸@t¸OèPr~D
08-12 11:33:52.223:INFO/EOH(10244):
fÝÆfĸ1ú��——KÓdMÓ��帕萨~��_Ø@lðU|¸k²g·m³+��席[k,q,q,ux],g2g,v~(?):j(}:} =(C c c)d,y*πqqPR,i,xh,h,y,y,y,p,q]
H#}{
��tDHýQcÁJÝÀÔ
TY��uÖ*,HÕEÕ3||ïïkM#Q}_��¤Ê©%¦¤·Ê��,Áä>Á4yÁÁ^ 3ø×PÜ/©RLwDáov]\_IaÔIϧ��Ðy|7ÜÎÎ4q®ÎsÐ9美元;nÏqùùùùùùsùsù,GtFGènWj½rºlXó240;½&3qofù 08-12 11:33:52.223:INFO/EOH(10244): IÎYÖs[6ÕklÕr��qNl
I®)
%ÃÝ|/ðýýýýýýýýýq·brPýK=S��w mAiÔE:wéKϧXÖ-����GxV;BÙtÚtÜÜÜÜ=UJ¨½*c{��dM+KQ9UFc;O\J��@[CÓåu:VQÞÌò��狡猾的��狡猾的��SLY0eÀe§~)l1+��������IEND®B`

如您所见,我正在尝试将一个名为“response”的字符串转换为可绘制对象。问题是,图像总是空白的

有人知道我有什么办法可以解决这个问题吗

多谢各位


编辑:

这也不管用(

试试这个:

BitmapDrawable drawable = BitmapFactory.decodeFile(response);
或者,如果不需要绘图,可以执行以下操作

Bitmap bm = BitmapFactory.decodeFile(response);
ImageView captcha = (ImageView)findViewById(R.id.imageView2);
captcha.setImageBitmap(bm);
已编辑

对于联机文件,您可以使用以下选项:

BitmapFactory.decodeStream(is)

以下是我正在使用的全部功能(不工作…):


您好,非常感谢您的回复-刚从午餐时间回来-我会尝试一下,然后再回复您…嘿,尝试集成您的代码,但没有成功;(图像显示为空白…等等-这是本地文件还是来自web的文件?这是来自web的字符串响应。抱歉,应该更清楚。嘿,我尝试了你的编辑-仍然无法工作…(请查看我的编辑)
BitmapFactory.decodeStream(is)
private void captchaLoad() {
         AsyncHttpClient myClient = new AsyncHttpClient();
         PersistentCookieStore myCookieStore = new PersistentCookieStore(context);
         myClient.setCookieStore(myCookieStore);
         RequestParams params = new RequestParams();

         myClient.post("http://www.extremetech.com/wp-content/uploads/2011/08/amd-logo-106x59.jpg", params, new AsyncHttpResponseHandler() {
            @Override
            public void onStart() {

            }

            @Override
            public void onSuccess(String response) {
                Log.i("EOH",response);

                ByteArrayInputStream bis = null;
                try {
                    bis = new ByteArrayInputStream(response.getBytes("UTF8"));
                } catch (UnsupportedEncodingException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                Bitmap bm=BitmapFactory.decodeStream(bis);

                ImageView imgView = (ImageView)findViewById(R.id.imageView2);
                imgView.setImageBitmap(bm);
            }

            @Override
            public void onFailure(Throwable e) {

            }
        });
     }