<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Newtonsoft.Json &#8211; FoxDevelop</title>
	<atom:link href="https://www.foxdevelop.com/category/c-en/c-library/newtonsoft-json-en/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.foxdevelop.com</link>
	<description>Independent Software Developer Studio</description>
	<lastBuildDate>Fri, 14 Aug 2026 02:13:53 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>

<image>
	<url>https://www.foxdevelop.com/wp-content/uploads/2026/05/fox-svgrepo-com-1.png</url>
	<title>Newtonsoft.Json &#8211; FoxDevelop</title>
	<link>https://www.foxdevelop.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Array serialization and deserialization</title>
		<link>https://www.foxdevelop.com/2026/08/14/array-serialization-and-deserialization/</link>
					<comments>https://www.foxdevelop.com/2026/08/14/array-serialization-and-deserialization/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 02:13:52 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8395</guid>

					<description><![CDATA[Example Notes ① Serialize List to JSON array string ② Deserialize JSON‑array string to List Array serialization and deserialization]]></description>
										<content:encoded><![CDATA[<!-- English -->

<ul class="wp-block-list">

<li>Similar to the previous section</li>


<li>We can parse a JSON string into an array</li>


<li>Simply replace the original class name with <code>List&lt;ClassName&gt;</code></li>

</ul>



<h4 class="wp-block-heading">Example</h4>


<pre class="wp-block-code"><span><code class="hljs language-php">string jsonString = @<span class="hljs-string">""</span><span class="hljs-string">"{"</span><span class="hljs-string">"webinfos"</span><span class="hljs-string">":&#91;{"</span><span class="hljs-string">"webname"</span><span class="hljs-string">":"</span><span class="hljs-string">"FoxDevelop"</span><span class="hljs-string">","</span><span class="hljs-string">"website"</span><span class="hljs-string">":"</span><span class="hljs-string">"foxdevelop.com"</span><span class="hljs-string">","</span><span class="hljs-string">"age"</span><span class="hljs-string">":4,
"</span><span class="hljs-string">"students"</span><span class="hljs-string">":&#91;{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Oliver"</span><span class="hljs-string">"},{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Noah"</span><span class="hljs-string">"}]},{"</span><span class="hljs-string">"webname"</span><span class="hljs-string">":"</span><span class="hljs-string">"FoxDevelop1"</span><span class="hljs-string">","</span><span class="hljs-string">"website"</span><span class="hljs-string">":"</span><span class="hljs-string">"foxdevelop.com1"</span><span class="hljs-string">",
"</span><span class="hljs-string">"age"</span><span class="hljs-string">":6,"</span><span class="hljs-string">"students"</span><span class="hljs-string">":&#91;{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Liam"</span><span class="hljs-string">"},{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Ethan"</span><span class="hljs-string">"}]}]}"</span><span class="hljs-string">""</span>;

StringReader sr = <span class="hljs-keyword">new</span> StringReader(jsonString);
JsonReader jr = <span class="hljs-keyword">new</span> JsonReader(sr);
<span class="hljs-keyword">List</span>&lt;WebInfo&gt; infoList = <span class="hljs-keyword">new</span> JsonSerializer().Deserialize(jr, typeof(<span class="hljs-keyword">List</span>&lt;WebInfo&gt;)) <span class="hljs-keyword">as</span> <span class="hljs-keyword">List</span>&lt;WebInfo&gt;;</code></span></pre>


<h4 class="wp-block-heading">Notes</h4>



<p class="wp-block-paragraph"></p>



<ol class="wp-block-list">

<li><strong>Keep code structure, variable names, escaped double‑quotes and line breaks unchanged, only replace target text</strong></li>


<li>Do not modify subsequent deserialization logic</li>

</ol>



<h4 class="wp-block-heading">① Serialize List to JSON array string</h4>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-comment">// Construct List collection</span>
<span class="hljs-keyword">List</span>&lt;WebInfo&gt; webList = <span class="hljs-keyword">new</span> <span class="hljs-keyword">List</span>&lt;WebInfo&gt;()
{
    <span class="hljs-keyword">new</span> WebInfo()
    {
        age = <span class="hljs-number">4</span>,
        webname = <span class="hljs-string">"FoxDevelop"</span>,
        website = <span class="hljs-string">"foxdevelop.com"</span>,
        students = <span class="hljs-keyword">new</span> Person&#91;] { <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Oliver"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Noah"</span>} }
    },
    <span class="hljs-keyword">new</span> WebInfo()
    {
        age = <span class="hljs-number">4</span>,
        webname = <span class="hljs-string">"FoxDevelop1"</span>,
        website = <span class="hljs-string">"foxdevelop.com"</span>,
        students = <span class="hljs-keyword">new</span> Person&#91;] { <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Liam"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Ethan"</span>} }
    },
    <span class="hljs-keyword">new</span> WebInfo()
    {
        age = <span class="hljs-number">4</span>,
        webname = <span class="hljs-string">"FoxDevelop2"</span>,
        website = <span class="hljs-string">"foxdevelop.com"</span>,
        students = <span class="hljs-keyword">new</span> Person&#91;] { <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Mason"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Logan"</span>} }
    }
};

<span class="hljs-comment">// Serialize: List object → JSON‑array string</span>
StringWriter sw = <span class="hljs-keyword">new</span> StringWriter();
JsonWriter writer = <span class="hljs-keyword">new</span> JsonWriter(sw);
<span class="hljs-keyword">new</span> JsonSerializer().Serialize(writer, webList);
string jsonArrStr = sw.GetStringBuilder().ToString();</code></span></pre>


<h4 class="wp-block-heading">② Deserialize JSON‑array string to List</h4>


<pre class="wp-block-code"><span><code class="hljs language-php">string jsonString = @<span class="hljs-string">"&#91;{"</span>webname<span class="hljs-string">":"</span>FoxDevelop<span class="hljs-string">","</span>website<span class="hljs-string">":"</span>foxdevelop.com<span class="hljs-string">","</span>age<span class="hljs-string">":4,
"</span>students<span class="hljs-string">":&#91;{"</span>name<span class="hljs-string">":"</span>Oliver<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Noah<span class="hljs-string">"}]},{"</span>webname<span class="hljs-string">":"</span>FoxDevelop1<span class="hljs-string">","</span>website<span class="hljs-string">":"</span>foxdevelop.com<span class="hljs-string">",
"</span>age<span class="hljs-string">":4,"</span>students<span class="hljs-string">":&#91;{"</span>name<span class="hljs-string">":"</span>Liam<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Ethan<span class="hljs-string">"}]},{"</span>webname<span class="hljs-string">":"</span>FoxDevelop2<span class="hljs-string">","</span>website<span class="hljs-string">":"</span>foxdevelop.com<span class="hljs-string">",
"</span>age<span class="hljs-string">":4,"</span>students<span class="hljs-string">":&#91;{"</span>name<span class="hljs-string">":"</span>Mason<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Logan<span class="hljs-string">"}]}]"</span>;

StringReader sr = <span class="hljs-keyword">new</span> StringReader(jsonString);
JsonReader jr = <span class="hljs-keyword">new</span> JsonTextReader(sr);
<span class="hljs-keyword">List</span>&lt;WebInfo&gt; dataList = <span class="hljs-keyword">new</span> JsonSerializer().Deserialize(jr, typeof(<span class="hljs-keyword">List</span>&lt;WebInfo&gt;)) <span class="hljs-keyword">as</span> <span class="hljs-keyword">List</span>&lt;WebInfo&gt;;</code></span></pre>


<p class="wp-block-paragraph">Array serialization and deserialization</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.foxdevelop.com/2026/08/14/array-serialization-and-deserialization/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Serialization and deserialization</title>
		<link>https://www.foxdevelop.com/2026/08/14/serialization-and-deserialization/</link>
					<comments>https://www.foxdevelop.com/2026/08/14/serialization-and-deserialization/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 02:08:27 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8379</guid>

					<description><![CDATA[Let&#8217;s recap serialization from the previous section, which converts an entity object into a JSON string. Serialization Generated JSON output Deserialization Convert a JSON string back to an entity object ...]]></description>
										<content:encoded><![CDATA[<!-- English -->

<p class="wp-block-paragraph">Let&#8217;s recap serialization from the previous section, which converts an entity object into a JSON string.</p>



<h4 class="wp-block-heading">Serialization</h4>


<pre class="wp-block-code"><span><code class="hljs language-javascript">WebInfo webInfo = <span class="hljs-keyword">new</span> WebInfo();
webInfo.age = <span class="hljs-number">4</span>;
webInfo.webname = <span class="hljs-string">"FoxDevelop"</span>;
webInfo.website = <span class="hljs-string">"foxdevelop.com"</span>;
webInfo.students = <span class="hljs-keyword">new</span> Person&#91;] { <span class="hljs-keyword">new</span> Person { name = <span class="hljs-string">"Tom"</span> }, <span class="hljs-keyword">new</span> Person { name = <span class="hljs-string">"Jim"</span> } };
<span class="hljs-comment">// Convert the webinfo object to a JSON string</span>
StringWriter sw = <span class="hljs-keyword">new</span> StringWriter();
JsonWriter writer = <span class="hljs-keyword">new</span> JsonWriter(sw);
<span class="hljs-keyword">new</span> JsonSerializer().Serialize(writer, webInfo);
string json = sw.GetStringBuilder().ToString();</code></span></pre>


<h5 class="wp-block-heading">Generated JSON output</h5>


<pre class="wp-block-code"><span><code class="hljs language-json">{<span class="hljs-attr">"webname"</span>:<span class="hljs-string">"FoxDevelop"</span>,<span class="hljs-attr">"website"</span>:<span class="hljs-string">"foxdevelop.com"</span>,<span class="hljs-attr">"age"</span>:<span class="hljs-number">4</span>,<span class="hljs-attr">"students"</span>:&#91;{<span class="hljs-attr">"name"</span>:<span class="hljs-string">"Zhang San"</span>},{<span class="hljs-attr">"name"</span>:<span class="hljs-string">"Li Si"</span>}]}</code></span></pre>


<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Deserialization</h3>



<p class="wp-block-paragraph">Convert a JSON string back to an entity object</p>



<p class="wp-block-paragraph">Method 1 (low‑level Reader approach)</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">WebInfo model = <span class="hljs-keyword">new</span> JsonSerializer()
    .Deserialize(<span class="hljs-keyword">new</span> JsonTextReader(<span class="hljs-keyword">new</span> StringReader(json)), <span class="hljs-keyword">typeof</span>(WebInfo)) <span class="hljs-keyword">as</span> WebInfo;</code></span></pre>


<p class="wp-block-paragraph">Method 2 (concise generic syntax, Newtonsoft.Json)</p>


<pre class="wp-block-code"><span><code class="hljs language-xml">WebInfo model = JavaScriptConvert.DeserializeObject<span class="hljs-tag">&lt;<span class="hljs-name">WebInfo</span>&gt;</span>(json);</code></span></pre>


<p class="wp-block-paragraph">new JsonSerializer().Deserialize(new JsonTextReader(new StringReader(jsonString)), typeof(ClassName) as ClassName</p>



<p class="wp-block-paragraph">With the above methods, we can deserialize JSON into entity objects.</p>



<p class="wp-block-paragraph">Alternative usage</p>



<p class="wp-block-paragraph">JavaScriptConvert.DeserializeObject&lt;NodeInfo&gt;(jsonText)</p>



<p class="wp-block-paragraph">Serialization and deserialization</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.foxdevelop.com/2026/08/14/serialization-and-deserialization/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Introduction</title>
		<link>https://www.foxdevelop.com/2026/08/14/introduction-4/</link>
					<comments>https://www.foxdevelop.com/2026/08/14/introduction-4/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 01:51:05 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8363</guid>

					<description><![CDATA[1. Introduction to Newtonsoft.Json Newtonsoft.Json (commonly known as Json.NET) is an open‑source JSON serialization/deserialization library for the .NET ecosystem 2. What is JSON JSON（JavaScript Object Notation） II. Define Entity Classes ...]]></description>
										<content:encoded><![CDATA[
<h4 class="wp-block-heading">1. Introduction to Newtonsoft.Json</h4>



<p class="wp-block-paragraph">Newtonsoft.Json (commonly known as Json.NET) is an <strong>open‑source JSON serialization/deserialization library for the .NET ecosystem</strong></p>



<ul class="wp-block-list">
<li>First release Json.NET 1.0.1 launched in 2006, major versions have reached 10+</li>



<li>Originally compatible with .NET 2.0, supports nearly all .NET frameworks (Framework/.NET Core/.NET 5+)</li>



<li>Assembly: <code>Newtonsoft.Json.dll</code>, install via NuGet</li>



<li>Source code was hosted on CodePlex in early days, now migrated to GitHub, widely adopted in enterprise‑level projects</li>
</ul>



<h4 class="wp-block-heading">2. What is JSON</h4>



<p class="wp-block-paragraph"><strong>JSON（JavaScript Object Notation）</strong></p>



<ul class="wp-block-list">
<li>Lightweight, <strong>language‑agnostic</strong> text‑based data‑exchange format, not exclusive to JavaScript</li>



<li>Core structure: key‑value pair <code>key:value</code>; supports nested objects <code>{}</code> and arrays <code>[]</code></li>
</ul>


<pre class="wp-block-code"><span><code class="hljs language-cs">{<span class="hljs-string">"webname"</span>:<span class="hljs-string">"FoxDevelop"</span>,<span class="hljs-string">"website"</span>:<span class="hljs-string">"foxdevelop.com"</span>,<span class="hljs-string">"age"</span>:<span class="hljs-number">4</span>,<span class="hljs-string">"students"</span>:&#91;{<span class="hljs-string">"name"</span>:<span class="hljs-string">"tom"</span>},{<span class="hljs-string">"name"</span>:<span class="hljs-string">"bill"</span>}]}</code></span></pre>


<h4 class="wp-block-heading">II. Define Entity Classes (Map to JSON Structure)</h4>



<h5 class="wp-block-heading">Person.cs (Student Object)</h5>


<pre class="wp-block-code"><span><code class="hljs language-cs"><span class="hljs-keyword">namespace</span> <span class="hljs-title">NewtonsoftDemo</span>
{
    <span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> <span class="hljs-title">Person</span>
    {
        <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> name { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; }
    }
}</code></span></pre>


<h5 class="wp-block-heading">WebInfo.cs (Root Object)</h5>


<pre class="wp-block-code"><span><code class="hljs language-cs"><span class="hljs-keyword">namespace</span> <span class="hljs-title">NewtonsoftDemo</span>
{
    <span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> <span class="hljs-title">WebInfo</span>
    {
        <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> webname { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; }
        <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> website { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; }
        <span class="hljs-keyword">public</span> <span class="hljs-keyword">int</span> age { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; }
        <span class="hljs-keyword">public</span> Person&#91;] students { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; }
    }
}</code></span></pre>


<h4 class="wp-block-heading">Example‑Serialize Object to JSON</h4>


<pre class="wp-block-code"><span><code class="hljs language-cs"><span class="hljs-function"><span class="hljs-keyword">protected</span> <span class="hljs-keyword">void</span> <span class="hljs-title">Page_Load</span>(<span class="hljs-params"><span class="hljs-keyword">object</span> sender, EventArgs e</span>)</span>
{
    <span class="hljs-comment">// 1. Instantiate entity and assign values</span>
    WebInfo webInfo = <span class="hljs-keyword">new</span> WebInfo();
    webInfo.age = <span class="hljs-number">4</span>;
    webInfo.webname = <span class="hljs-string">"FoxDevelop"</span>;
    webInfo.website = <span class="hljs-string">"foxdevelop.com"</span>;
    webInfo.students = <span class="hljs-keyword">new</span> Person&#91;] 
    { 
        <span class="hljs-keyword">new</span> Person { name = <span class="hljs-string">"TOM"</span> },
        <span class="hljs-keyword">new</span> Person { name = <span class="hljs-string">"JACK"</span> } 
    };

    <span class="hljs-comment">// 2. Low‑level Newtonsoft.Json: serialize with JsonWriter</span>
    StringWriter sw = <span class="hljs-keyword">new</span> StringWriter();
    JsonWriter writer = <span class="hljs-keyword">new</span> JsonWriter(sw);
    <span class="hljs-keyword">new</span> JsonSerializer().Serialize(writer, webInfo);
    <span class="hljs-keyword">string</span> json = sw.GetStringBuilder().ToString();
}</code></span></pre>


<h4 class="wp-block-heading">Simplified Code for Daily Use</h4>



<p class="wp-block-paragraph">Newtonsoft.Json provides static helper methods to avoid manually creating <code>JsonWriter</code>:</p>


<pre class="wp-block-code"><span><code class="hljs language-cs"><span class="hljs-comment">// One‑line serialization, widely used in development</span>
<span class="hljs-keyword">string</span> json = JsonConvert.SerializeObject(webInfo);</code></span></pre>


<h4 class="wp-block-heading">Output JSON Result</h4>


<pre class="wp-block-code"><span><code class="hljs language-cs">{
  <span class="hljs-string">"webname"</span>: <span class="hljs-string">"FoxDevelop"</span>,
  <span class="hljs-string">"website"</span>: <span class="hljs-string">"foxdevelop.com"</span>,
  <span class="hljs-string">"age"</span>: <span class="hljs-string">"4"</span>,
  <span class="hljs-string">"students"</span>: &#91;
    {<span class="hljs-string">"name"</span>:<span class="hljs-string">"TOM"</span>},
    {<span class="hljs-string">"name"</span>:<span class="hljs-string">"JACK"</span>}
  ]
}</code></span></pre>


<h4 class="wp-block-heading">Others</h4>



<ul class="wp-block-list">
<li><strong>System.Text.Json</strong>: Microsoft built‑in JSON library starting from .NET Core 3.0; Newtonsoft.Json is still popular for legacy .NET Framework projects</li>



<li>Features: property aliasing, field ignoring, date formatting, circular reference handling and other advanced capabilities</li>
</ul>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">Introduction</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.foxdevelop.com/2026/08/14/introduction-4/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
