新浪微博用java sdk,发送带图片的微博,怎么弄?

publicclassUpload{publicstaticvoidmain(Stringargs[]){try{try{byte[]content=readFileIm... public class Upload { public static void main(String args[]) { try { try { byte[] content = readFileImage(args[2]); System.out.println("content length:" + content.length); ImageItem pic = new ImageItem("pic", content); String s = java.net.URLEncoder.encode(args[1], "utf-8"); Timeline tl = new Timeline(); tl.client.setToken(args[0]);// access_token Status status = tl.UploadStatus(s, pic); System.out.println("Successfully upload the status to [" + status.getText() + "]."); } catch (Exception e1) { e1.printStackTrace(); } } catch (Exception ioe) { System.out.println("Failed to read the system input."); } } 是在weibo4j.examples.timeline;包里的Upload.java吗?如果是,应该怎么修改上边的代码? 展开
 我来答
miraclelord
2014-03-06 · TA获得超过272个赞
知道答主
回答量:228
采纳率:0%
帮助的人:162万
展开全部
/**
     * 发布一条有图片的新浪微博
     * @param token            用户的令牌
     * @param content        微博内容
     * @param picData        图片
     * @throws Exception
     */
    public void addImgWeibo(Token token, String content, byte[] picData) throws Exception {
        Timeline tl = new Timeline();
        tl.client.setToken(token.getAccessToken());
        
        String s = java.net.URLEncoder.encode(content, "utf-8");//有图片的微博需要转码
        if(picData != null) {
            ImageItem pic = new ImageItem("pic", picData);
            Status status = tl.UploadStatus(s, pic);
            System.out.println("----------" + status);
        } else {
            Status status = tl.UpdateStatus(content);//如果获得的图片为空,则只发文字
            System.out.println(status);
        }
    }
更多追问追答
追问
那我的图片的地址,比如“E:/***.jpg”应该放在哪?文字是把content修改成“文字内容”吗?,还有你是用的新浪微博给的java sdk吗?
追答

是用的新浪的sdk,图片可以解析成二进制数据 byte[] picData,我这个方法的图片是从网上取的

public byte[] loadImageByte(String imgUrl) {
        byte[] picData = null;
        try {
            InputStream inputImage = new URL(imgUrl).openStream();
            picData = IOUtils.toByteArray(inputImage);
        } catch (Exception e) {
            logError("获得图片" + imgUrl + " 失败:" + e.getMessage(), e);
        }
        return picData;
    }
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式