登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 1008|回复: 0

【Java】解析json文件

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-6-30 22:23:26 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. /*1、JsonObject
    , B- w$ q6 `! ~% |  S3 q1 t3 {+ L

  2. " M: a1 x5 {% j. n- E, f
  3. 使用JsonObject解析只有一条数据的json是非常方便的例如:"{"name":"zhangsan","password":"zhangsan123","email":"10371443@qq.com"}"; V+ b6 g& `* e8 S2 a- L. |% G

  4. - E. q9 N7 f  o
  5. */
    8 a0 O2 _! s9 q# ^+ B9 R, M1 N

  6. 9 Z6 J& E* B/ n4 D: ~6 b9 W; ^) |
  7. public static void main(String[] args) {
    & v+ Y. v1 V( D0 I
  8. 3 J* J8 U1 v9 R' F3 i) K
  9.                  String jsonString ="{"name":"zhangsan","password":"zhangsan123","email":"10371443@qq.com"}";5 D: t) ]6 S% I/ v; @2 K
  10.                  JSONObject json = JSONObject.fromObject(jsonString);- Q& B8 \4 a$ R/ _- n
  11.                  User user = new User();8 k( `: @1 F( Y3 D) Y: Q
  12.                  user.setName(json.getString("name"));- C  O3 ?' L5 e) `9 J. {  T
  13.                  user.setPassword(json.getString("password"));
    # r* L/ B# ~" J- T$ n
  14.                  user.setEmail(json.getString("email"));+ l+ y4 w# x$ A. X$ S
  15.                  System.out.println(user.toString());, \. a! K9 _1 \  @* W  p( J1 h
  16.         }. ~. `) [9 o# z+ b1 Z" j

  17. - ^( u5 y( k# N, @3 u4 t2 c$ t
  18. 2、JsonArray
    ; g9 y+ d7 J- A5 |. q$ p
  19.   N9 Z% y# s) E6 ]
  20. 使用JsonArray解析数组数据的json是非常方便的例如:"[{"name":"zhangsan","password":"zhangsan123","email":"10371443@qq.com"},{"name":"lisi","password":"lisi123","email":"1435123@qq.com"}]". M. _3 e+ ]" p7 ?' Z
  21.   @. y  q8 y, C0 u9 |2 N

  22. * f$ W. a2 s9 m& x
  23. String json = <span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">"[{"name":"zhangsan","password":"zhangsan123","email":"10371443@qq.com"},</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">{"name":"lisi","password":"lisi123","email":"1435123@qq.com"}</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">]"</span>;
    0 C9 n( @; w- B  J5 N, o
  24.                  JSONArray jsonArray = JSONArray.fromObject(json);* R( D) h$ |, _
  25.                  ArrayList<User> users = new ArrayList<User>();
    # K, Y% |3 g+ N* E4 ^
  26.                  for (int i = 0; i < jsonArray.size(); i++) {
    * U2 d, S& d6 H5 E, W
  27.                          User userM = new User();" t( e0 i% z0 t0 ]
  28.                          user.setName(jsonArray.getJSONObject(i).getString("name"));  D# @" `( w* \3 j% ~" v% v
  29.                          user.setpassword(jsonArray.getJSONObject(i).getString("password"));  ~1 ?5 ^* H) H& r5 j
  30.                          user.setEmail(jsonArray.getJSONObject(i).getString("email"));
    ) R- [8 i" R0 p0 P- ]: z7 k
  31.                          users.add(user);
    / m6 R0 j& v5 t7 n6 {# e
  32.                 }: T6 z$ O$ P2 ~3 f9 B7 I7 Y) Y1 ?
  33.                  for (User user : users) {% s+ ?- |, ?9 V' B2 P
  34.                         System.out.println(user.toString());. `, q9 l4 b9 U* \& g
  35.                 }
    ; J1 Q$ s) }; t% G+ l: B  S

  36. * Y7 B$ ]9 m) L+ h
  37. 通过以上两种方式可以解析不同格式的json数据
    $ ^6 h9 k5 t* Y* `, L0 t+ y
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区 |网站地图

GMT+8, 2024-4-19 21:34 , Processed in 0.048618 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表