# How to convert json array to cmake list variable

**URL:** https://discourse.cmake.org/t/how-to-convert-json-array-to-cmake-list-variable/6446
**Category:** Usage
**Created:** [September 9, 2022, 7:42am UTC](https://discourse.cmake.org/t/how-to-convert-json-array-to-cmake-list-variable/6446 "2022-09-09T07:42:34Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![baiwfg2](https://discourse.cmake.org/user_avatar/discourse.cmake.org/baiwfg2/32/2753_2.png) [@baiwfg2](https://discourse.cmake.org/u/baiwfg2)
#### Post date: [September 9, 2022, 7:42am UTC](https://discourse.cmake.org/t/how-to-convert-json-array-to-cmake-list-variable/6446/1 "2022-09-09T07:42:34Z")

</div>

Suppose I have part of a json: `"dir": ["a/b", "c/d"]` , how should I get a cmake list variable like:  
`set(var "a/b" "c/d")` via `string(JSON`

If json is `{"name":"foo"}`, I can get `foo` from `string(JSON cur_name GET ${MY_JSON_STRING} ${IDX} name)`. But I don’t know how to iterate over a json array.

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [September 9, 2022, 5:33pm UTC](https://discourse.cmake.org/t/how-to-convert-json-array-to-cmake-list-variable/6446/2 "2022-09-09T17:33:31Z")

</div>

You’ll need to get the length and build up an array using `string(JSON out GET json path.to.array.${n})`.
