Objective-C naar JSON Converter
Plak Objective-C dictionaries, arrays of classes. Je krijgt JSON terug.
Wat deze tool doet
Als je een Objective-C-NSDictionary-literal hebt, een NSArray met models, of een hele class met een stapel @property-declaraties, en je wilt gewoon de JSON-representatie — deze tool doet het. Geen wegwerp-programma meer hoeven schrijven dat NSJSONSerialization aanroept om de output te zien.
De output matcht wat [NSJSONSerialization dataWithJSONObject:options:error:] je zou geven op de equivalente in-memory object graph. NSDictionary wordt een JSON-object, NSArray wordt een JSON-array, NSString blijft een string, NSNumber wordt een number of boolean afhankelijk van het onderliggende type (@YES/@NO vs. @42), NSNull / [NSNull null] wordt null. NSDate komt als ISO-8601-string naar buiten — de conventie waar de meeste iOS-apps uiteindelijk op uitkomen.
Als je een hele class plakt (@interface Order : NSObject ... @end plus een @implementation of een [[Order alloc] init]-literal met property-assignments), leest de converter elke @property en bouwt het JSON-object met die keys. Geneste classes — een Address-property op Order — worden uitgepakt als geneste JSON-objects. Meerdere classes tegelijk geplakt komen eruit als meerdere top-level entries.
Hoe je het gebruikt
Drie stappen. Werkt voor een enkel dictionary-literal of een bestand vol classes.
Plak je Objective-C (of probeer het voorbeeld)
Gooi je code in de linker editor. Een NSDictionary-literal, een NSArray, een class met @property of een class-instance met assignments — allemaal prima.
Laat de @-prefixes, pointer-sterretjes en bracket-syntax met rust. De parser snapt @{...}, @[...] en @"...".
Klik Converteren
Klik op de groene Converteren-knop. De tool leest elke dictionary, array, property en value, en bouwt het JSON in één pass.
Kopieer het JSON
Het rechterpaneel geeft je ingesprongen JSON, klaar voor een test fixture, een API-mock of documentatie. Kopiëren en door.
Wanneer dit echt uitkomst biedt
iOS API-response fixtures
Plak de dictionary die je in een unit test aan <code>dataWithJSONObject:</code> zou geven en sla de output op als .json-fixture. Houdt de test deterministisch.
Legacy Obj-C-models documenteren
Een oude iOS-codebase heeft Obj-C-classes die je in een OpenAPI-spec moet documenteren. Zet elk model om naar JSON om de schema-vorm te pakken zonder te gokken.
Porten naar Swift
Als onderdeel van Swiftification wil je de JSON-vorm die door elke Obj-C-class geïmpliceerd wordt. Snelle manier om die referentie te genereren voor je de Codable-struct schrijft.
Backend handoff
Je hebt een NSDictionary klaar om te POSTen. Plakken en dubbelchecken dat de JSON-vorm matcht met het API-contract voordat de request eruit gaat.
Veelgestelde vragen
Matcht het de output van NSJSONSerialization?
Ja — dat is het doel. NSDictionary/NSArray/NSString/NSNumber/NSNull mappen de standaard manier. NSDate wordt gestringificeerd als ISO-8601 (NSJSONSerialization zelf behandelt NSDate niet — de tool pakt de breed gebruikte conventie).
Kan ik een class met @property-declaraties plakken?
Ja. Elke @property wordt een key in het JSON-object, en het type bepaalt hoe de waarde eruit komt (bv. NSString * → string, NSNumber * → number). Als het voorbeeld ook property-assignments bevat, vullen die waardes het JSON; anders worden placeholder-waardes gebruikt.
Hoe worden BOOL en NSNumber onderscheiden?
@YES / @NO en [NSNumber numberWithBool:] leveren JSON true/false op. Integer- en float-NSNumber-literals (@42, @3.14) leveren JSON-numbers op — dezelfde regel die NSJSONSerialization toepast wanneer het op basis van het encoded type kan bepalen wat er is.
En geneste classes en arrays van objecten?
Geneste NSDictionary en NSArray worden volledig uitgepakt. Een class met een andere class als property komt eruit als een genest JSON-object. Een NSArray van model-instances wordt een JSON-array van objecten, één per instance.
Wordt mijn code opgeslagen?
Je code wordt naar de backend gestuurd voor de conversie en niet bewaard — we loggen de payload niet. Blank echte keys of tokens in het voorbeeld alsnog eerst even af.
Handelt het NSDate, NSURL en andere Foundation-types af?
NSDate wordt een ISO-8601-string. NSURL wordt zijn absoluteString. NSData wordt base64. Dit zijn de conventies die de meeste iOS-teams gebruiken bij serialiseren, gedocumenteerd in Foundation.
Andere tools die je misschien nodig hebt
Objective-C naar JSON werkt prima samen met de rest van de toolbox: