問題タブ [touchjson]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - TouchJSON、NSNull を扱う
こんにちは、TouchJSON を使用して JSON を逆シリアル化しています。私は過去にそれを使用しており、その際、NSNull の発生を手動で処理していました。作者もこれに対処しなければならないと思うので、もう一度それを行うのはオーバーヘッドになります。その後、ドキュメントでこれを見つけました:
出力で NSNull 値を回避します。
私が理解している方法では、クラスのユーザーは C スタイルの null ポインターをデシリアライザーに渡すことができ、NSNull に遭遇すると、渡された値 (NULL) が挿入されます。そのため、後で値を使用すると、NSNull ではなく NULL が返されます。
これは奇妙に思えます。戻り値は、オブジェクトのみを含むことができる NSDictionary です。代わりに値のデフォルトを「nil」にすべきではありませんか?
NULL の場合、このように値を確認できますか?
これを行うことができる方がより論理的に見えるでしょう:
nil を渡すことは許可されていますが、NULL を渡すとクラッシュが発生するすべてのケースは言うまでもありません。
または、「nil」をデシリアライザーに渡すことはできますか?
これの多くは、私がまだ nil、NULL、[NSNULL null] に苦労していることに起因しています。おそらく、nil を使用する際の潜在的な警告を認識していないのでしょう。
json - TouchJSONでJSON配列をどのように解析しますか?
私はTouchJSONを使用しています。Rails アプリを呼び出して、localhost:3000/posts.json ですべての「投稿」を取得しました。これは、角かっこで囲まれた JSON 配列を返します。現在、jsonString を NSDictionary に変換するように設定していますが、角括弧が原因で失敗します。
TouchJSON ライブラリを使用して、この結果を NSArray に変換する最良の方法は何ですか?
objective-c - TouchJsonのメモリリーク?
TouchJson を使用して、facebooks グラフ API から json データを解析しています。メモリリークが発生していますが、その理由はよくわかりません...
リークを見つけるために、他のすべてを削除したので、次のコードが残っています。リークはループごとに 1 つの NSCFString であり、myItem.date への割り当てが原因であることは理解していますが、その理由はわかりません。
最新バージョンの TouchJson を使用しています
ご協力ありがとうございました!
編集: MyItem は、そのようなプロパティを持つ単なるオブジェクトであることを忘れていました
iphone - JSON 解析の目的 c
次の json コードを取得しました。
要素「picture_1」を取得する方法を誰か教えてもらえますか? 目的cにtouchJsonを使用しています。
よろしくお願いします
iphone - iphone Objective-c : json デシリアライゼーションのための文字列から NSData への変換
Web サービスから NSMutableData に json を受け取ります。
これは、TouchJson を使用して NSDictionary に変換されます。
次に、その辞書のキーから文字列を取得します。
文字列は以下のようになります
基本的に、'car' キーに対して 'n' 個のレコードが存在する可能性があります。
上記を使用してNSDataに変換しようとすると
そしてまた
しかし、私は得る
利用可能な他のいくつかのエンコーディングを試しましたが、xcode はまだスローされます。
使用されているエンコーディングを確認するにはどうすればよいですか?
これは、objective-c で json を逆シリアル化する最初の試みです。
ここで何が欠けている/間違っていますか?
ありがとう
ios - touchJSONにあるように見えるメモリリーク
これが私が問題を抱えているリークの問題です。このコードのほとんどはコンテキストのためにここにあるので、「応答」NSDataオブジェクトがリークしているものではないことがわかります。
LEAKSツールによって与えられたスタックトレースに従ってtouchJSONコードにドリルダウンすると、リークは明らかにラインで始まります。
しかし、これは非常に一般的に使用されるライブラリであるため、問題ではないかと思います。
1つのメモ。これは、最初に実行されたときにリークするのではなく、それ以降は毎回リークします。ただし、リークが多いため、応答データはリークしている実際のデータである可能性があります。
また、touchJSONとこのコードに精通している人がいる場合は、このoutStringConstant変数とは何か、そしてそれが何をするのかを説明していただけますか?その行を削除するとコードがクラッシュしますが、Stringのコピーが割り当てられる以外は、何の役割も果たしていないようです。
私のコードは
TOUCHJSONコードは
iphone - TouchJSON - 解析の結果に多くの \U**** が表示されるのはなぜですか?
TouchJSON を使用して JSON データを解析しています。
結果では、配列内の文字列はすべて \U* *形式になっています。
はい、英語以外の言語を意図しています。
なぜTouchJSONはUTF8経由で実際の文字列に置き換えることができないのですか?
結果を NSStrings として保存し、UILabel で使用する場合、結果をどのように処理すればよいですか?
ありがとう
ios - NSDictionaryからプロパティを取得するにはどうすればよいですか?
JSONでクライアントアプリケーションにデータを返すWebサービスがあります。TouchJsonを使用して、このデータをNSDictionaryに逆シリアル化します。素晴らしい。ディクショナリにはキー「results」が含まれ、resultsにはオブジェクトのNSArrayが含まれます。
これらのオブジェクトは、ログに出力すると次のようになります。
出力:
このオブジェクトのタイプを特定できません。このオブジェクトからプロパティと値を取得するにはどうすればよいですか?
ありがとう!
serialization - NSDictionary からの TOUCHJSON シリアル化
TouchJSON シリアライゼーションに関する質問と回答を読みましたが、まだ機能しません。
サンプル データを使用して NSDictionary を作成し、JSONTouch シリアライザーを使用して NSDictionary を JSON に変換しました。ただし、NSData オブジェクト 'theJSONData' をログに記録すると、結果として次のようになります。
<7b223131 31353535 34343434 223a2250 ... 65227d>
さらに、この「theJSONData」データを Web サービス (JSON を想定している) に送信すると、次のように返されます。
2011-07-31 18:48:46.572 街灯[7169:207] シリアル化エラー: (null)
2011-07-31 18:48:46.804 街路灯[7169:207] returnData: (null)
2011-07-31 18:48:46.805 Street Lights[7169:207] エラー: エラー Domain=kJSONScannerErrorDomain Code=-201 「配列をスキャンできませんでした。配列は '[' 文字で開始されていません。」UserInfo=0x4d51ab0 {snippet=!HERE>!?xml version="1.0" 、location=0、NSLocalizedDescription=アレイをスキャンできませんでした。'[' 文字で始まっていない配列、文字 = 0、行 = 0}
私は何を間違っていますか?JSON NSData オブジェクト 'theJSONData' は、Web サービスに送信する前に別の型に変換する必要がありますか? 私が見逃している別のステップはありますか?
nsdictionary - NSDictionary の valueForKey メソッドによって返される値を比較する際の問題
TouchJSON を使用して、以下を NSDictionary オブジェクトに変換します
私は何か悪いことをしましたか?
助けていただければ幸いです。