ObjC にキーなしで、NSString から JsonString を作成する必要があります。すべてのチュートリアルでは、NSDictionary または NSData からのシリアル化について説明しています。
私の文字列は @"fr-FR" のようなものです。私が探している結果は @"{"fr-FR"}" のようなものですが、動的です。さまざまな種類の引数に対して同じことを行う必要があるため、自分で行うことはできません。
前もって感謝します :)
ObjC にキーなしで、NSString から JsonString を作成する必要があります。すべてのチュートリアルでは、NSDictionary または NSData からのシリアル化について説明しています。
私の文字列は @"fr-FR" のようなものです。私が探している結果は @"{"fr-FR"}" のようなものですが、動的です。さまざまな種類の引数に対して同じことを行う必要があるため、自分で行うことはできません。
前もって感謝します :)
求めている結果を得るには (適切な JSON でなくても)、次のような方法を試すことができます。
NSString *myString = @"fr-FR"; // Or whatever
NSString *result = [NSString stringWithFormat:@"{\"%@\"}", myString];
IOS 5 +で開発する場合は、NSJSONSerializationクラスを使用できます。
文字列を使用してデータを作成する
NSString *myString = @"fr-FR"; // Or whatever
NSString *result = [NSString stringWithFormat:@"{%@}", myString];
NSData* data=[result dataUsingEncoding:NSUTF8StringEncoding];
その後、
+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error
JSONオブジェクトを作成するには
(入力しただけで、テストされていません)
TouchJSONなどの JSON フレームワーク/ライブラリを使用する必要があり、次のようにして をエンコードできますNSString
。
theData = [[CJSONSerializer serializer] serializeObject:theString
error:&theError];
(ここのデモコードから)。
json仕様を再度読んだ後のIMHO(http://www.json.org){"string"}は有効なjsonではなく、c#で使用しているコードは無効な結果を生成します。ただし、このように機能するc#コードと通信する必要がある場合は、JSONライブラリを使用して文字列自体をエンコードし、後で中括弧で囲む必要があります。そうすれば、引用符と中括弧を手動で追加するだけでは得られない、特殊なケース(引用符など)のJSONに必要なすべてのエスケープを取得できます。