An open API service indexing awesome lists of open source software.

https://github.com/gragra33/utf8jsonasyncstreamreader

High-performance asynchronous JSON streaming parser for .NET that enables memory-efficient processing of large JSON datasets. Built on System.Text.Json.Utf8JsonReader, this library provides forward-only streaming with conditional branch deserialization, keeping memory usage minimal regardless of file size. Perfect for processing massive JSON files
https://github.com/gragra33/utf8jsonasyncstreamreader

json streaming-api

Last synced: 4 months ago
JSON representation

High-performance asynchronous JSON streaming parser for .NET that enables memory-efficient processing of large JSON datasets. Built on System.Text.Json.Utf8JsonReader, this library provides forward-only streaming with conditional branch deserialization, keeping memory usage minimal regardless of file size. Perfect for processing massive JSON files

Awesome Lists containing this project

README

          

# Utf8JsonAsyncStreamReader

An Asynchronous forward-only streaming JSON parser and deserializer based on [System.Text.Json.Utf8JsonReader](https://github.com/dotnet/runtime/blob/418aa8ab6bb5cce2be1a8dee292818d2c201f152/src/libraries/System.Text.Json/src/System/Text/Json/Reader/Utf8JsonReader.cs). Buffer reads a stream and enable conditional branch deserialization. Memory usage is minimal, based of either the buffer size used or the json property branch being deserialized.

See the [Deserializing Json Streams using Newtonsoft.Json & System.Text.Json with C# & VB](https://www.codeproject.com/Articles/5340376/Deserializing-Json-Streams-using-Newtonsoft-and-Sy') article for detailed breakdown and usage with C# or VB.Net with full samples, benchmarks, tests, and more. Covers both file and web streaming with unzipped and zipped files of very large size.

## Nuget

Package: [Utf8JsonAsyncStreamReader](https://www.nuget.org/packages/Utf8JsonAsyncStreamReader)

## Support

If you find this library useful, then please consider [buying me a coffee ☕](https://bmc.link/gragra33).

## History

- 1.0.0: Initial release - supports .Net 7.0
- 1.1.0: Updated to support .Net 8.0; fixed missing paramater JsonSerializerOptions in one call