HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
1217
yosh52jsonデータを読み込み更新して出力するとキーが重複する0未解決


yosh52

リンク

2013/12/17(Tue) 13:11:08|NO.58779

HSP3.32bを使っております。OSはWindows7(32bit)です。

json形式の文字列データ

{ "val":3, "str":"hoge" }
を読み込み、"val"の値を3から2013に書き換えて出力したい状況なのですが、

#include "hspinet.as" sdim s,64 notesel s: noteload "jsontest.txt" jsonopen jsp_root,s jsonputi jsp_root,"val",2013,0 jsonout s,jsp_root notesave "jsontest_out.txt": noteunsel jsonclose
を実行すると、出力されるjsontest_out.txtが

{ "val": 3, "str": "hoge", "val": 2013 }
となり、キーが重複してしまいます。

{ "val": 2013, "str": "hoge" }
のような(キーが重複しない)出力を得るためには、
どのようなコードを書けばよいでしょうか。

一度"val"というキーを削除すれば良いのかと思い、

#include "hspinet.as" sdim s,64 notesel s: noteload "jsontest.txt" jsonopen jsp_root,s jsongetobj jsp_val,"val",jsp_root jsondelobj jsp_val jsonputi jsp_root,"val",2013,0 jsonout s,jsp_root notesave "jsontest_out.txt": noteunsel jsonclose
というコードも試しましたが、途中でフリーズしてしまいました。
そもそも、jsondelobjはオブジェクトの削除であって値の削除ではないので
見当違いなのでは、とも感じました。

json系の命令を使ったHSPソースコードがあまりウェブ上では見つからず、
質問させていただきました次第です。助言いただけますと幸いです。



この記事に返信する


ONION software Copyright 1997-2023(c) All rights reserved.