2011-11-11 31 views

回答

0

我不知道理解你的问题,我不知道你理解得很好。

也许你的问题是C.与JSON有几个C(& C++)的JSON库。你可以使用jansson

+0

我很抱歉这个令人困惑的问题。其实我不在乎将结果输出到JSON文件。我想实际做的是使用C中的curl.h库获取Twitter流。我编辑了我的问题。谢谢。 – neilmarion

+0

根据https://dev.twitter.com/docs/api/1/post/direct_messages/new你应该关心JSON。您不需要将JSON放入文件中(您可以将JSON生成为字符串并传输)。 –

+0

是的。我知道。 Twitter API以JSON格式返回推文。而且,我知道如何解析JSON文件。对我来说最重要的是如何通过编码C来使用Twitter流。 – neilmarion

1

如果我明白你问的卷曲的要求,我个人认为不是那么好写的教程的基本格局。看起来十几行代码应该提供如何使用CURL的基本模式,但是我没有在教程中看到它的写法。希望这会有所帮助:

CURL *handle; 
char PostFields[512]; 

/* initialise curl */ 
curl_global_init(CURL_GLOBAL_ALL) 
handle = curl_easy_init(); 

/* set options to post */ 
curl_easy_setopt(handle, CURLOPT_URL, TwitterUrl); 
curl_easy_setopt(handle, CURLOPT_POST, 1); 

sprintf(PostFields, "user_id=%s?screen_name=%s", TwitterId, TwitterName); 
curl_easy_setopt(handle, CURLOPT_POSTFIELDS, (void*)PostFields); 
curl_easy_setopt(handle, CURLOPT_POSTFIELDSSIZE, strlen(PostFields)); 

/* set options to handle response */ 
curl_easy_setopt(handle, CURLOPT_HEADERFUNCTION, HandleTwitterHeader); 
curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, HandleTwitterResponse); 

/* do the request */ 
curl_easy_perform(handle); 
curl_easy_cleanup(handle); 
+0

这会输出一串推文吗?或者只是一个推文? – neilmarion

+0

也不是,它只是示例CURL代码发布请求 - 你说你知道如何在命令行获取流,而我不熟悉Twitter API。您应该能够在使用CURL命令行之前?作为TwitterUrl,以及之后的PostFields数据。 – asc99c

+0

注意:这听起来像你最初在为自己编写这段代码时要求指针。如果您正在寻找它,请看这里:http://code.google.com/p/twitcurl/ – asc99c