How to unflatten flattened json in C#
<p>from this <a href="https://stackoverflow.com/a/35838986/1311686">Answer</a> I learned how to flatten a JSON object in c#.
from JSON String:</p>

<pre><code>{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
</code></pre>

<p>To:</p>

<p>The following are lines of strings, not an object</p>

<pre><code>menu.id:file
menu.value:File
menu.popup.menuitem[0].value:New
menu.popup.menuitem[0].onclick:CreateNewDoc()
menu.popup.menuitem[1].value:Open
menu.popup.menuitem[1].onclick:OpenDoc()
menu.popup.menuitem[2].value:Close
menu.popup.menuitem[2].onclick:CloseDoc()
</code></pre>

<p>Now, i want to <strong>reverse</strong> the process.
I can found implementations from this <a href="https://stackoverflow.com/questions/19098797/fastest-way-to-flatten-un-flatten-nested-json-objects">question</a> but it is in JavaScript.</p>

<p>How do I <strong>unflatten</strong> (return structured JSON from lines) it in C# with json.net?</p>