คำถามติดแท็ก gson

Gson เป็นไลบรารีโอเพ่นซอร์สของ Google สำหรับการทำให้เป็นอนุกรมและการแยกส่วนของออบเจ็กต์ Java ไปยัง / จาก JSON

30
Android Studio: เพิ่ม jar เป็นไลบรารีหรือไม่
ฉันพยายามใช้ Android Studio ใหม่ แต่ดูเหมือนว่าฉันจะทำงานไม่ถูกต้อง ฉันใช้ไลบรารีGsonเพื่อทำให้เป็นอนุกรม / deserialize JSON-objects แต่ห้องสมุดก็ไม่ได้รวมอยู่ในโครงสร้าง ผมได้สร้างโครงการใหม่มีเพียงMainActivity คัดลอกgson-2.2.3.jarในโฟลเดอร์ / libs และเพิ่มเป็นการพึ่งพาไลบรารี (คลิกขวา -> เพิ่มเป็นไลบรารี) ซึ่งรวมถึง jar ใน android studio ดังนั้นจึงสามารถอ้างอิงได้จากไฟล์ต้นฉบับ เมื่อฉันพยายามเรียกใช้โครงการมันไม่สามารถคอมไพล์ได้ดังนั้นฉันจึงเพิ่ม: compile files('libs/gson-2.2.3.jar') เพื่อการอ้างอิงในไฟล์ de .gradle หลังจากนั้นมันก็คอมไพล์อย่างถูกต้อง แต่เมื่อรันแอพพลิเคชั่ClassDefNotFoundExceptionน ไม่มีใครรู้ว่าฉันทำอะไรผิดหรือเปล่า?

13
Google Gson - ยกเลิกการลบรายการ <class> รายการวัตถุหรือไม่ (ประเภททั่วไป)
ฉันต้องการถ่ายโอนวัตถุรายการผ่าน Google Gson แต่ฉันไม่ทราบวิธียกเลิกการกำหนดประเภททั่วไป สิ่งที่ฉันลองหลังจากดูที่คำตอบนี้ (คำตอบของ BalusC): MyClass mc = new Gson().fromJson(result, new List&lt;MyClass&gt;(){}.getClass()); แต่จากนั้นฉันได้รับข้อผิดพลาดใน eclipse ที่พูดว่า "The new list () {} ต้องใช้วิธีนามธรรมที่สืบทอดมา ... " และถ้าฉันใช้การแก้ไขอย่างรวดเร็วฉันจะได้มอนสเตอร์มากกว่า 20 วิธี ฉันค่อนข้างมั่นใจว่ามีวิธีแก้ปัญหาที่ง่ายกว่า แต่ฉันก็หาไม่เจอ! แก้ไข: ตอนนี้ฉันมี Type listType = new TypeToken&lt;List&lt;MyClass&gt;&gt;() { }.getType(); MyClass mc = new Gson().fromJson(result, listType); อย่างไรก็ตามฉันได้รับข้อยกเว้นต่อไปนี้ที่บรรทัด "fromJson": java.lang.NullPointerException at org.apache.harmony.luni.lang.reflect.ListOfTypes.length(ListOfTypes.java:47) …
441 java  json  generics  gson 

7
แทนค่า null ใน JSON
วิธีที่แนะนำสำหรับการคืนค่า null ใน JSON คืออะไร มีการตั้งค่าที่แตกต่างกันสำหรับดั้งเดิม? ตัวอย่างเช่นหากวัตถุของฉันบนเซิร์ฟเวอร์มีจำนวนเต็มชื่อ "myCount" โดยไม่มีค่า JSON ที่ถูกต้องที่สุดสำหรับค่านั้นจะเป็น: {} หรือ { "myCount": null } หรือ { "myCount": 0 } คำถามเดียวกันสำหรับ Strings - ถ้าฉันมีสตริง "myString" บนเซิร์ฟเวอร์เป็น JSON ที่ดีที่สุด: {} หรือ { "myString": null } หรือ { "myString": "" } หรือ (พระเจ้าช่วยฉันด้วย) { "myString": "null" } ฉันชอบการประชุมสำหรับคอลเลกชันที่จะแสดงใน JSON เป็นคอลเลกชันที่ว่างเปล่าhttp://jtechies.blogspot.nl/2012/07/item-43-return-empty-arrays-or.html …
422 json  jackson  gson 

15
Gson: วิธียกเว้นฟิลด์เฉพาะจากการทำให้เป็นอนุกรมโดยไม่มีคำอธิบายประกอบ
Наэтотвопросестьответына กองมากเกินнарусском : Исключитьполеприсериализацииилидесериализациив Gson ฉันพยายามที่จะเรียนรู้ Gson และฉันกำลังดิ้นรนกับการกีดกันภาคสนาม นี่คือชั้นเรียนของฉัน public class Student { private Long id; private String firstName = "Philip"; private String middleName = "J."; private String initials = "P.F"; private String lastName = "Fry"; private Country country; private Country countryOfBirth; } public class Country { private Long id; …
413 java  json  serialization  gson 

5
แจ็คสันกับ Gson [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา หลังจากค้นหาไลบรารีที่มีอยู่สำหรับ JSON แล้วฉันก็พบกับสองสิ่งนี้: แจ็คสัน Google GSon ฉันเป็นเพียงเล็กน้อยต่อ GSON แต่คำในเน็ตคือ GSon ทนทุกข์ทรมานจากปัญหาประสิทธิภาพท้องฟ้าบางอย่าง(ณ เดือนกันยายน 2009) ฉันทำการเปรียบเทียบต่อไป ในระหว่างนี้ฉันกำลังมองหาความช่วยเหลือในการตัดสินใจ
363 java  json  comparison  gson  jackson 

9
Gson: แปลงสตริงเป็น JsonObject โดยตรง (ไม่มี POJO)
ดูเหมือนจะไม่สามารถเข้าใจได้ ฉันพยายาม JSON จัดการต้นไม้ใน GSON แต่ฉันมีกรณีที่ผมไม่ทราบหรือมี POJO JsonObjectการแปลงสายอักขระลงก่อนที่จะแปลงไป มีวิธีที่จะไปจาก a StringถึงโดยตรงJsonObjectหรือไม่? ฉันได้ลองแล้ว (Scala ไวยากรณ์): val gson = (new GsonBuilder).create val a: JsonObject = gson.toJsonTree("""{ "a": "A", "b": true }""").getAsJsonObject val b: JsonObject = gson.fromJson("""{ "a": "A", "b": true }""", classOf[JsonObject]) แต่aล้มเหลว JSON จะหนีออกมาและแยกวิเคราะห์เป็นJsonStringเท่านั้นและ ผลตอบแทนที่ว่างเปล่าbJsonObject ความคิดใด ๆ
300 java  json  gson 

9
GSON ขว้างปา“ คาดว่าจะ BEGIN_OBJECT แต่เป็น BEGIN_ARRAY” หรือไม่
ฉันพยายามแยกสตริง JSON แบบนี้ [ { "updated_at":"2012-03-02 21:06:01", "fetched_at":"2012-03-02 21:28:37.728840", "description":null, "language":null, "title":"JOHN", "url":"http://rus.JOHN.JOHN/rss.php", "icon_url":null, "logo_url":null, "id":"4f4791da203d0c2d76000035", "modified":"2012-03-02 23:28:58.840076" }, { "updated_at":"2012-03-02 14:07:44", "fetched_at":"2012-03-02 21:28:37.033108", "description":null, "language":null, "title":"PETER", "url":"http://PETER.PETER.lv/rss.php", "icon_url":null, "logo_url":null, "id":"4f476f61203d0c2d89000253", "modified":"2012-03-02 23:28:57.928001" } ] ลงในรายการของวัตถุ List&lt;ChannelSearchEnum&gt; lcs = (List&lt;ChannelSearchEnum&gt;) new Gson().fromJson( jstring , ChannelSearchEnum.class); นี่คือคลาสวัตถุที่ฉันใช้ import com.google.gson.annotations.SerializedName; public class …
295 java  android  gson 

16
ฉันจะแปลง JSON เป็น HashMap โดยใช้ Gson ได้อย่างไร
ฉันขอข้อมูลจากเซิร์ฟเวอร์ที่ส่งคืนข้อมูลในรูปแบบ JSON หล่อ HashMap ลงใน JSON เมื่อทำการร้องขอนั้นไม่ได้ยากเลย แต่วิธีอื่น ๆ นั้นดูจะยุ่งยากเล็กน้อย การตอบสนอง JSON มีลักษณะดังนี้: { "header" : { "alerts" : [ { "AlertID" : "2", "TSExpires" : null, "Target" : "1", "Text" : "woot", "Type" : "1" }, { "AlertID" : "3", "TSExpires" : null, "Target" : "1", "Text" : "woot", …
286 java  json  dictionary  hashmap  gson 

12
การแปลงข้อมูล JSON เป็นวัตถุ Java
ฉันต้องการเข้าถึงคุณสมบัติจากสตริง JSON ภายในวิธีการกระทำของ Java ของฉัน myJsonString = object.getJson()สตริงสามารถใช้ได้โดยเพียงแค่บอกว่า ด้านล่างเป็นตัวอย่างของสิ่งที่สตริงสามารถมีลักษณะ: { 'title': 'ComputingandInformationsystems', 'id': 1, 'children': 'true', 'groups': [{ 'title': 'LeveloneCIS', 'id': 2, 'children': 'true', 'groups': [{ 'title': 'IntroToComputingandInternet', 'id': 3, 'children': 'false', 'groups': [] }] }] } ในสายนี้ทุกวัตถุ JSON มีอาร์เรย์ของวัตถุ JSON อื่น ๆ ความตั้งใจคือการแยกรายการของรหัสที่วัตถุที่กำหนดใด ๆ ที่มีคุณสมบัติกลุ่มที่มีวัตถุ JSON อื่น ๆ ฉันดู …
262 java  json  jackson  gson 

7
Gson - แปลงจาก Json เป็น ArrayList ที่พิมพ์ <T>
การใช้ไลบรารี Gson ฉันจะแปลงสตริง JSON ArrayListเป็นคลาสที่กำหนดเองได้JsonLogอย่างไร โดยพื้นฐานแล้วJsonLogเป็นอินเทอร์เฟซที่ใช้งานโดยบันทึกต่าง ๆ ที่ทำโดยแอพ Android ของฉัน - บันทึก SMS, บันทึกการโทร, บันทึกข้อมูล - และนี่ArrayListคือชุดทั้งหมดของพวกเขา ฉันได้รับข้อผิดพลาดในบรรทัดที่ 6 ต่อไป public static void log(File destination, JsonLog log) { Collection&lt;JsonLog&gt; logs = null; if (destination.exists()) { Gson gson = new Gson(); BufferedReader br = new BufferedReader(new FileReader(destination)); logs = gson.fromJson(br, ArrayList&lt;JsonLog&gt;.class); …
211 java  android  json  gson 

8
GSON - รูปแบบวันที่
ฉันพยายามที่จะมีรูปแบบวันที่กำหนดเองในการส่งออก Gson แต่ดูเหมือนจะไม่ทำงานและมันเหมือนกันกับ.setDateFormat(DateFormat.FULL).registerTypeAdapter(Date.class, new DateSerializer()) มันเหมือนกับว่า Gson ไม่สนใจเกี่ยวกับวัตถุ "Date" และพิมพ์ในทางของมัน ฉันจะเปลี่ยนสิ่งนั้นได้อย่างไร ขอบคุณ แก้ไข: @Entity public class AdviceSheet { public Date lastModif; [...] } public void method { Gson gson = new GsonBuilder().setDateFormat(DateFormat.LONG).create(); System.out.println(gson.toJson(adviceSheet); } ฉันมักจะใช้java.util.Date; setDateFormat()ไม่ทำงาน :(
187 java  gson 

11
JSON แยกวิเคราะห์โดยใช้ Gson สำหรับ Java
ฉันต้องการที่จะแยกข้อมูลจาก JSON Stringซึ่งเป็นประเภท ฉันใช้Google Gson ฉันมี: jsonLine = " { "data": { "translations": [ { "translatedText": "Hello world" } ] } } "; และชั้นเรียนของฉันคือ: public class JsonParsing{ public void parse(String jsonLine) { // there I would like to get String "Hello world" } }
154 java  json  gson 

4
ตกลงเพื่อใช้อินสแตนซ์ Gson เป็นเขตข้อมูลคงที่ใน model bean (นำมาใช้ใหม่) หรือไม่
นี่คือแบบจำลองที่ฉันใช้: public class LoginSession { private static final Gson gson = new Gson(); private String id; private String name; private long timestamp; public LoginSession(String id, String name) { this.id = id; this.name = name; this.timestamp = System.currentTimeMillis(); } public String toJson() { return gson.toJson(this); } public static LoginSession fromJson(String json) …


10
ไม่สามารถสร้างตัวแปลงสำหรับชั้นเรียนของฉันในห้องสมุด Android Retrofit
ฉันย้ายจากการใช้ Volley เป็น Retrofit ฉันมีคลาส gson ที่ฉันใช้มาก่อนสำหรับการแปลง JSONObject reponse เป็นวัตถุที่ใช้การเพิ่มความคิดเห็น gson เมื่อฉันพยายามที่จะทำให้ http ได้รับคำขอโดยใช้ชุดติดตั้งเพิ่ม แต่แอปของฉันล้มเหลวด้วยข้อผิดพลาดนี้: Unable to start activity ComponentInfo{com.lightbulb.pawesome/com.example.sample.retrofit.SampleActivity}: java.lang.IllegalArgumentException: Unable to create converter for class com.lightbulb.pawesome.model.Pet for method GitHubService.getResponse ฉันทำตามคำแนะนำในไซต์ติดตั้งเพิ่มเติมและฉันได้พบกับการใช้งานเหล่านี้: นี่คือกิจกรรมของฉันที่ฉันพยายามเรียกใช้คำขอ http ย้อนยุค: public class SampleActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sample); Retrofit …
130 android  gson  retrofit 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.