<?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/pt-pt/category/c-pt-pt/bliblioteca-do-c/newtonsoft-json-pt-pt/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.foxdevelop.com</link>
	<description>Estúdio Independente de Desenvolvimento de Software</description>
	<lastBuildDate>Fri, 14 Aug 2026 02:16:21 +0000</lastBuildDate>
	<language>pt-PT</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>Serialização e desserialização de arrays</title>
		<link>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao-de-arrays/</link>
					<comments>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao-de-arrays/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 02:16:20 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8409</guid>

					<description><![CDATA[Exemplo Observações ① Serializar List para string de array JSON ② Desserializar string de array JSON para List Serialização e desserialização de arrays]]></description>
										<content:encoded><![CDATA[<!-- Português -->

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

<li>Da mesma forma da seção anterior</li>


<li>Podemos converter uma string JSON em um array</li>


<li>Basta trocar o nome da classe original por <code>List&lt;NomeDaClasse></code></li>

</ul>



<h4 class="wp-block-heading">Exemplo</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">"Miguel"</span><span class="hljs-string">"},{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Gustavo"</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">"Arthur"</span><span class="hljs-string">"},{"</span><span class="hljs-string">"name"</span><span class="hljs-string">":"</span><span class="hljs-string">"Enzo"</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">Observações</h4>



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



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

<li><strong>Manter estrutura do código, nomes de variáveis, aspas escapadas e quebras de linha, trocar apenas o texto‑alvo</strong></li>


<li>Não alterar o código de desserialização seguinte</li>

</ol>



<h4 class="wp-block-heading">① Serializar List para string de array JSON</h4>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-comment">// Montar a coleção List</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">"Miguel"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Gustavo"</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">"Arthur"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Enzo"</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">"Pedro"</span>}, <span class="hljs-keyword">new</span> Person{name=<span class="hljs-string">"Lucas"</span>} }
    }
};

<span class="hljs-comment">// Serialização: Objeto List → string de array JSON</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">② Desserializar string de array JSON para 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>Miguel<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Gustavo<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>Arthur<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Enzo<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>Pedro<span class="hljs-string">"},{"</span>name<span class="hljs-string">":"</span>Lucas<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">Serialização e desserialização de arrays</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao-de-arrays/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Serialização e desserialização</title>
		<link>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao/</link>
					<comments>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 02:11:27 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8393</guid>

					<description><![CDATA[Vamos revisar a serialização da seção anterior: converte um objeto de entidade em uma string JSON. Serialização Resultado JSON gerado Desserialização Converter string JSON para objeto de entidade Método 1 ...]]></description>
										<content:encoded><![CDATA[<!-- Português -->

<p class="wp-block-paragraph">Vamos revisar a serialização da seção anterior: converte um objeto de entidade em uma string JSON.</p>



<h4 class="wp-block-heading">Serialização</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">// Converte o objeto webinfo para string JSON</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">Resultado JSON gerado</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">Desserialização</h3>



<p class="wp-block-paragraph">Converter string JSON para objeto de entidade</p>



<p class="wp-block-paragraph">Método 1 (escrita com Reader de baixo nível)</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">Método 2 (sintaxe genérica concisa, 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(NomeDaClasse) as NomeDaClasse</p>



<p class="wp-block-paragraph">Com esses métodos conseguimos desserializar um JSON em objeto de entidade.</p>



<p class="wp-block-paragraph">Também pode ser usado dessa forma</p>



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



<p class="wp-block-paragraph">Serialização e desserialização</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.foxdevelop.com/pt-pt/2026/08/14/serializacao-e-desserializacao/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Apresentação</title>
		<link>https://www.foxdevelop.com/pt-pt/2026/08/14/apresentacao-4/</link>
					<comments>https://www.foxdevelop.com/pt-pt/2026/08/14/apresentacao-4/#respond</comments>
		
		<dc:creator><![CDATA[jack]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 02:00:59 +0000</pubDate>
				<category><![CDATA[Newtonsoft.Json]]></category>
		<guid isPermaLink="false">https://www.foxdevelop.com/?p=8377</guid>

					<description><![CDATA[1. Apresentação do Newtonsoft.Json O Newtonsoft.Json (conhecido como Json.NET) é um componente open‑source para serialização e desserialização JSON no ecossistema .NET. 2. O que é JSON JSON (JavaScript Object Notation, ...]]></description>
										<content:encoded><![CDATA[
<h4 class="wp-block-heading">1. Apresentação do Newtonsoft.Json</h4>



<p class="wp-block-paragraph">O Newtonsoft.Json (conhecido como Json.NET) é um <strong>componente open‑source para serialização e desserialização JSON no ecossistema .NET</strong>.</p>



<ul class="wp-block-list">
<li>A primeira versão, Json.NET 1.0.1, foi lançada em 2006; as versões atuais já passam da 10.</li>



<li>Inicialmente compatível com o .NET 2.0, funciona com praticamente todos os frameworks .NET (.NET Framework, .NET Core, .NET 5+).</li>



<li>Assembly: <code>Newtonsoft.Json.dll</code>, instalado por meio do NuGet.</li>



<li>Seu código‑fonte ficava hospedado no CodePlex, mas foi migrado para o GitHub; é amplamente utilizado em projetos empresariais.</li>
</ul>



<h4 class="wp-block-heading">2. O que é JSON</h4>



<p class="wp-block-paragraph"><strong>JSON (JavaScript Object Notation, notação de objetos JavaScript)</strong></p>



<ul class="wp-block-list">
<li>Formato textual leve para troca de dados, <strong>independente de linguagem</strong> e não exclusivo do JavaScript.</li>



<li>Estruturas principais: pares chave‑valor <code>key:value</code>; suporta aninhamento de objetos <code>{}</code> e 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. Definição das classes de entidade (correspondentes à estrutura JSON)</h4>



<h5 class="wp-block-heading">Person.cs (objeto aluno)</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 (objeto principal de nível superior)</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">Exemplo: serializar objeto para 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. Instanciar a entidade e preencher os valores</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. Forma de baixo nível do Newtonsoft.Json: serializar com 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">Sintaxe simplificada para uso diário</h4>



<p class="wp-block-paragraph">O Newtonsoft.Json disponibiliza métodos utilitários estáticos, evitando a criação manual de <code>JsonWriter</code>:</p>


<pre class="wp-block-code"><span><code class="hljs language-cs"><span class="hljs-comment">// Serialização em uma linha, muito usada no dia a dia do desenvolvimento</span>
<span class="hljs-keyword">string</span> json = JsonConvert.SerializeObject(webInfo);</code></span></pre>


<h4 class="wp-block-heading">Resultado JSON gerado</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">Outras observações</h4>



<ul class="wp-block-list">
<li><strong>System.Text.Json</strong>: biblioteca JSON nativa da Microsoft a partir do .NET Core 3.0; ainda assim, projetos antigos do .NET Framework costumam usar o Newtonsoft.Json.</li>



<li>Recursos: suporte a apelidos de propriedades, ignorar campos, formatação de datas, tratamento de referências circulares e outras funcionalidades avançadas.</li>
</ul>



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



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