C言語でcjsonを使ってJSONファイルを解析する方法は何ですか?

cjsonライブラリを使用してJSONファイルを解析する手順は次の通りです:

  1. cjsonライブラリを公式サイト(https://github.com/DaveGamble/cJSON)からダウンロードし、それをあなたのC言語プロジェクトに追加してください。
  2. cjsonのヘッダーファイルを含める。
  3. “cJSON.h”をインクルードします。
  4. JSONファイルのコンテンツを読み込む:
  5. // JSONファイルを開く
    FILE *file = fopen(“example.json”, “r”);
    if (file == NULL) {
    // ファイルの開けなかった場合の処理
    return;
    }// JSONファイルのサイズを取得
    fseek(file, 0, SEEK_END);
    long fileSize = ftell(file);
    fseek(file, 0, SEEK_SET);

    // メモリを割り当ててJSON内容を読み込む
    char *jsonString = (char *)malloc(fileSize + 1);
    fread(jsonString, 1, fileSize, file);
    jsonString[fileSize] = ‘\0’;

    // ファイルを閉じる
    fclose(file);

  6. JSONのコンテンツを解析する。
  7. // JSON文字列の解析
    cJSON *json = cJSON_Parse(jsonString);
    if (json == NULL) {
    // 解析失敗時の処理
    free(jsonString);
    return;
    }// JSONオブジェクトから必要なデータを取得
    cJSON *name = cJSON_GetObjectItemCaseSensitive(json, “name”);
    if (cJSON_IsString(name) && (name->valuestring != NULL)) {
    printf(“名前: %s\n”, name->valuestring);
    }

    cJSON *age = cJSON_GetObjectItemCaseSensitive(json, “age”);
    if (cJSON_IsNumber(age) && (age->valuedouble != 0)) {
    printf(“年齢: %.1f\n”, age->valuedouble);
    }

    // リソースの解放
    cJSON_Delete(json);
    free(jsonString);

  8. 最後に、リソースを開放することを忘れないでください。
  9. jsonを削除してください。
    free(jsonString);

cjsonライブラリを使用してJSONファイルを解析する基本的な手順が記載されています。必要に応じてJSONオブジェクト内のデータをさらに処理することができます。

bannerAds