Java: JSONObject.toJSONString 出力文字列コンテンツ処理

ヒント: 記事を書いた後、目次を自動生成することができます. 生成方法は右のヘルプドキュメントを参照してください.


序文

JSONObject は、Java オブジェクトを JSON ストリーム出力に変換できます。これは、データの表示やデータのやり取りに非常に役立ちます。

ただし、JSONObject.toJSONString で出力される文字列には、次の形式の問題がよくあります。 1. Java の String 型は、出力時に二
引用符 ("") が含まれます。
string Number)
3. JSON ストリームを出力する場合、デフォルトで角かっこ ("[" "]") が含まれます
4. Java の値は空で、JSON ストリームを出力する場合は null です

このホワイト ペーパーでは、これらの問題に対する解決策を示します。


1. JSON 文字列の二重引用符を削除します

String.replaceAll()を使用して削除します

キーポイント: エスケープ文字\を使用する

コード例:

JSONObject.toJSONString(output).replaceAll("\"","")

2. 日付型を出力する場合は、標準時刻形式に従う

利用:JSONObject.toJSONStringWithDateFormat()

キーポイント: 時間形式は必要に応じて自由に定義できます

コード例:

JSONObject.toJSONStringWithDateFormat(out,"yyyy-MM-dd HH:mm:ss");

3. JSON ストリーム出力の前後にあるデフォルトの角括弧を削除します

String.replace()を使用して削除します

JSONObject.toJSONString(out).replace("[","").replace("]","");

4. JSON ストリーム出力に含まれる可能性のある null を削除します

またはString.replace()を使用して削除します

JSONObject.toJSONString(out).replace("null","");

まとめ、JSON出力は従来のフォーマットに準拠し、nullコンテンツを含まない

JSONObject.toJSONStringWithDateFormat(out,"yyyy-MM-dd HH:mm:ss").replaceAll("\"","").replace("[","").replace("]","").replace("null","");

最後に書く

JSONObject.toJSONString が出力すると、実際には文字列が出力されます。 String.replaceAll() を使用して、表示したくないコンテンツを削除できます。

この記事で紹介した方法は、実際にはばかげた方法ですが、文字の正規表現を使用して に一致させ、必要に応じてそれらを削除することもできます。
文字の正規表現を使用してコードを一致させると、はるかに簡潔で有能になります. 興味のある友人はそれを学ぶことができます.

米国にとって良いことを願っています!

おすすめ

転載: blog.csdn.net/qq_46119575/article/details/129424024