httpサーバにヒットした後、XML形式のレスポンスが返されます。私はこの目的のためにlibcurlを使用しています。 私はいくつかのXMLパーサーを使用することを考えていましたが、APIを見ると、すべてXMLファイルが取られますが、char *のデータがあります。XMLレスポンスの解析
は、char取り可能な任意のXMLパーサーは、私のコードはLinux上でCにある入力
として*あります。
私はXMLのドメインへの初心者です:)
#include <curl/curl.h>
size_t write_data(void *buffer, size_t size, size_t nmemb, void *userp)
{
printf ("\n punith\n");
printf ("\n size %d\n",size);
printf ("\n no. of mem %d\n",nmemb);
printf ("\n%s\n",(char *)userp);
printf ("%s",(char *)buffer);
}
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
curl_easy_setopt(curl, CURLOPT_URL, "http://192.168.1.188:80/un.xml");
res = curl_easy_perform(curl);
/* always cleanup */
curl_easy_cleanup(curl);
}
return 0;
}
私の出力は
<RNQueryRsp>
<RefID>ABCD999001</RefID>
<PN>919</PN>
<Result>1</Result>
<RN>1414</RN>
<DNO>100</DNO>
<NRHN>101</NRHN>
<LSA>XY</LSA>
</RNQueryRsp>
申し訳ありませんが、Linuxで作業しています。 – punith
@punith:私はlibcurlに慣れていませんが、xlmを出力したい場合はcurl_easy_getinfoを使用してXMLを取得する必要があると思います。レスポンスを解析する必要がある場合は、チェックしたXML解析APIを使用して投稿を更新する必要があります。 – Cratylus