把图片转成 二进制数组就行了。 http://topic.csdn.net/u/20120529/09/156e88dd-d1da-4739-8a27-c9f7d40a0588.html
参考一下此文,我之前也回复过
---------------------------------------------------------------------------
需要特别说明的是 我们的sdk是weibo4j-oauth2.jar
另外说明的是 图片是用二进制传过去的
LZ应该看看官方的demo
Weibo weibo = new Weibo();
weibo.setToken("sina token");
Timeline tm = new Timeline();
Status status = null;
String content = "xxxx";
byte[] img = null;//这里是图片二进制数据
if(img!=null && img.length>0){
ImageItem ii = new ImageItem(img);
status = tm.UploadStatus(URLEncoder.encode(content, "UTF-8"), ii);
}else{
status = tm.UpdateStatus(content);
}

解决方案 »

  1.   

    看了, 你们说的这些都是老版的吧?
    我用的就是新版的,像什么Timeline,ImageItem之类的都没有private String upload(Weibo weibo, String source, String file, String status, String lon,
                String lat) throws WeiboException {
            WeiboParameters bundle = new WeiboParameters();
            bundle.add("source", source);
            bundle.add("pic", file);
            bundle.add("status", status);
            if (!TextUtils.isEmpty(lon)) {
                bundle.add("lon", lon);
            }
            if (!TextUtils.isEmpty(lat)) {
                bundle.add("lat", lat);
            }
            String rlt = "";
            String url = Weibo.SERVER + "statuses/upload.json";
            try {
                rlt = weibo
                        .request(this, url, bundle, Utility.HTTPMETHOD_POST, mWeibo.getAccessToken());
            } catch (WeiboException e) {
                throw new WeiboException(e);
            }
            return rlt;
        }这是官方给的范例,我都不知道他们是怎么写的,更不知道里面的图片参数怎么传,怎么会是一个String类型的。
    一看到这我就火了,有此感慨一下:新浪的东西是我见过,用过的最差的,一丁点专业性都没有
      

  2.   

    哥们,你不厚道啊。
    它倒霉官方自带的Utility类就有你给我的全部代码,而且一模一样