I'm on the look-out for any implementations of this new binary data representation.
Any .NET implementation of Concise Binary Object Representation(CBOR)?
Asked Answered
Google search for "cbor implementation c#" provides this lucky hit :-) –
Ducks
New C# implementation: github.com/dahomey-technologies/Dahomey.Cbor –
Tonita
You can try the .Net 5.0 Extension provided by MS
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
https://www.nuget.org/packages/System.Formats.Cbor/5.0.0
https://learn.microsoft.com/en-us/dotnet/api/system.formats.cbor
https://github.com/dotnet/performance/search?q=cbor
Here you have an sample to write and read:
using System;
using System.Formats.Cbor;
var writer = new CborWriter();
writer.WriteStartArray(3);
writer.WriteInt64(DateTimeOffset.UtcNow.ToUnixTimeMilliseconds());
writer.WriteInt32(1);
writer.WriteStartArray(1);
writer.WriteInt32(9);
writer.WriteEndArray();
writer.WriteEndArray();
var myByteArray = writer.Encode();
var reader = new CborReader(data);
reader.ReadStartArray();
long unixDT = reader.ReadInt64();
int myInt = reader.ReadInt32();
reader.ReadStartArray();
int myInt2 = reader.ReadInt32();
reader.ReadEndArray();
reader.ReadEndArray();
var response = new object[]
{
unixDT,
myInt,
new object[] { myInt2 }
};
Cheers
A list of several CBOR implementations can be found at http://cbor.io — this includes a C# implementation.
Dahomey.Cbor
High-performance CBOR serialization framework for .Net
Features
- Serialization/Deserialization from/to Streams, byte buffer
- Object Model
- Mapping to any .Net class
- Extensible Polymorphism support based on discriminator conventions
- Extensible Naming conventions
- Custom converters for not supported types
- .Net standard 2.0 support
As an alternitive you can look at the Nuget-Package
PeterO.Cbor (source: https://github.com/peteroupc/CBOR).
looks (at the moment of writing) maintained and has a lot stars.
© 2022 - 2024 — McMap. All rights reserved.