X-Git-Url: http://git.datanom.net/vcard-parser.git/blobdiff_plain/aa039bee0fd8f3db86fb10482345f940ce63f33b..0d68a95569264bb6b305c87c6dfc1c50ad536a79:/example/vcard-example.c diff --git a/example/vcard-example.c b/example/vcard-example.c index 254bca4..43e5b2d 100644 --- a/example/vcard-example.c +++ b/example/vcard-example.c @@ -1,5 +1,56 @@ -# include +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include +#include +#include +#include "vcard.h" + +int main(int argc, char *argv[]) { + GError* err = NULL; + gchar* buffer = NULL; + int args; + + if (argc > 1) { + for (args = 1; args < argc; args++) { + g_file_get_contents(argv[args], &buffer, NULL, &err); + + if (err) { + fprintf(stderr, "%s\n", err->message); + g_error_free(err); + return 1; + } + + GSList* list = VCard_new_from_text(buffer, VCARD_VERSION_DETECT, FALSE); + g_free(buffer); + buffer = NULL; + GSList* tmp = list; + while (tmp) { + VCard* vc = (VCard*) tmp->data; + gchar* state = VCard_get_state(vc); + if (g_strcmp0("OK", state) != 0) + fprintf(stderr, "%s\n", state); + g_free(state); + + g_print("Search property ADR in vCard\n"); + GSList* prop = VCard_get_property(vc, "ADR"); + for (GSList* iter = prop; iter; iter = g_slist_next(iter)) { + gchar* s = (gchar*) iter->data; + g_print("%s\n", s); + g_free(s); + } + g_slist_free(prop); + tmp = tmp->next; + } + VCard_print_list(list); + g_print("\n"); + VCard_list_free(list); + } + } else { + g_print("Mising file argument(s)\n"); + g_print("Usage: %s file [file ..]\n", argv[0]); + } -int main() { return 0; }