บางครั้งเมื่อเราใช้งานข้อมูลข้อมูลจำนวนมากอยู่ในรูปแบบ jsonarry
ชอบ:
[{"ชื่อ": "ทดสอบข้อมูล", "id": 1}, {"ชื่อ": "ทดสอบข้อมูล 2", "id": 2}]รูปแบบนี้เป็นประเภทข้อมูลตารางประเภทมาก แต่เราต้องใช้ชื่อด้วย ID เป็น 1 เพื่อให้เราต้องแปรผันก่อน หากคุณต้องการใช้งานประเภทดังกล่าวหลายครั้งมันจะลำบากมาก
เราสามารถดูได้จากข้อมูลที่นี่ว่า ID นั้นไม่ซ้ำกัน จากนั้นเราสามารถหาวิธีแปลงเป็น jsonObject เพื่อให้เราสามารถรับชื่อได้อย่างง่ายดายตาม ID ที่ระบุ
สาธารณะ jsonObject สาธารณะ toJSonObject (JsonArray jsonArray, คีย์สตริง) {jsonObject jsonObject = new JSonObject (); สำหรับ (int i = 0; i <jsonArray.size (); i ++) {jsonObject temp = jsonarray.getJsonObject (i); สตริง [] keyValues = stringUtil.stringtoArray (คีย์); if (keyValues! = null) {สำหรับ (string item: keyValues) {string [] k = item.split (":"); String [] keys = k [0] .split ("_"); Keyname String = K [0]; if (keys.length == 2) {keyName = keys [0]; } string jsonkeyname = temp.getString (keyname); if (keys.length == 2) {jsonkeyname + = "_" + คีย์ [1]; } jsonObject.put (jsonkeyname, temp.getString (k [1])); }}} return jsonObject; -วิธีนี้สามารถใช้งานได้ง่าย แต่อาจไม่ใช่วิธีที่ดีที่สุดในการใช้งาน เรายินดีต้อนรับคำแนะนำที่มีค่าสำหรับมัน
นี่คือกรณี
กรณีที่ 1:
ข้อมูลต้นฉบับ: [{"name": "test data", "id": 1}, {"name": "test data 2", "id": 2}] วิธีการโทร: tojsonobject (jsonarray, "id: name") ผลลัพธ์: {"1": "ข้อมูลทดสอบ", "2":กรณีที่ 2: (นี่เป็นเพียงสิ่งที่เราต้องเพิ่มในธุรกิจของเราเอง)
ข้อมูลต้นฉบับ: [{"name": "test data", "id": 1}, {"name": "test data 2", "id": 2}] วิธีการโทร: tojsonobject (jsonarray, "id_test: name") ผลลัพธ์: {"1_test": "ทดสอบข้อมูล", "2_test":กรณีที่สาม:
ข้อมูลต้นฉบับ: [{"ไม่": 100, "ชื่อ": "ทดสอบข้อมูล", "id": 1, "desc": "ทดสอบคำอธิบาย"}, {"ไม่": 101, "ชื่อ": "ทดสอบข้อมูล 2", "id": 2, "desc": "คำอธิบายการทดสอบ 2"}] ข้อมูล "," 100 ":" ทดสอบคำอธิบาย "," 2 ":" ทดสอบข้อมูล 2 "," 101 ":" การทดสอบคำอธิบาย 2 "}Java ด้านบนแปลง JsonArray เป็นวิธี JSONObject ที่สอดคล้องกับค่าคีย์คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น