實際上,我正在做一些測驗,其中我從我們的端點之一獲得回應,該端點看起來像多個單獨的 json 物件,我需要將它們轉換為字串或單個 json 物件之類的形式,以便我可以執行一些操作他們。
Json 回應示例:-
{"user_name":"testUser","email":"[email protected]"}
{"country":"Australia","Gender":"Male"}
{"type":"Customer_Account","membership":"Annual"}
這里的問題是在將其轉換為某個字串或 Json 物件之前,我無法執行任何操作。
并且無法控制回應,因為它來自某些第三方應用程式。
任何想法如何使用 JavaScript 或 Java 轉換它都會有很大的幫助。
uj5u.com熱心網友回復:
我認為您的問題出在回應的來源中,這不是有效的 JSON。您可以在此處驗證錯誤:https : //jsonlint.com/
你實作了 JSON 的源代碼嗎?如果是這樣,您可以將其設為物件串列...
[{"user_name":"testUser","email":"[email protected]"},
{"country":"Australia","Gender":"Male"},
{"type":"Customer_Account","membership":"Annual"}]
如果回應的來源是外部的(您不能修改它),則可以將回應保存為一個字串,然后將該字串拆分為一個串列以對其進行迭代以生成物件。
希望這有點幫助。
uj5u.com熱心網友回復:
如果您的物件由換行符分隔,您可以逐行讀取流,并決議應該是有效 JSON 的每一行。
否則,您可以通過跟蹤嵌套大括號的級別(遞增為{,遞減為})來檢測物件的結尾。
除了單獨決議每個物件之外,您還可以插入括號和逗號以形成有效的 JSON 陣列,然后決議該陣列。
uj5u.com熱心網友回復:
使用正則運算式拆分 JSON 并將其保存在陣列中:
let text = '{"user_name":"testUser","email":"[email protected]"}{"country":"Australia","Gender":"Male"}{"type":"Customer_Account","membership":"Annual"}';
const myArray = text.split(/(?=[{])/g);
let name = JSON.parse(myArray[0]).user_name;
console.log(myArray[0]);
console.log(name);
現在您可以將字串決議為 JSON。
uj5u.com熱心網友回復:
用逗號連接它們,并將結果放在括號中[]:
[
{"user_name":"testUser","email":"[email protected]"},
{"country":"Australia","Gender":"Male"},
{"type":"Customer_Account","membership":"Annual"}
]
之后使用可以使用 JSONObject 類或其他相關的東西
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/385804.html
標籤:javascript 爪哇 json 格森
