我喜歡從下面JSON得到code
值獲取的價值,但我得到一個錯誤象下面這樣: -如何從JSON使用Java
顯示java.lang.NullPointerException
我我得到一個錯誤在下面的代碼行
Iterator<String> iterator = companyList.iterator();
我有一個像下面的JSON對象: -
{
"products":
{
"productsApp13": {
"code": "productsApp13",
"name": "productsApp13",
"attribute_set": "Apparel",
"product_type": "product",
"status": "active"
}
}
}
我的代碼: -
import org.junit.Before;
import org.junit.Test;
import com.fasterxml.jackson.databind.ObjectMapper;
import static org.junit.Assert.*;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
try {
Object obj1 = parser.parse(new FileReader(path.directorypath));
JSONObject jsonObject = (JSONObject) obj1;
String name = (String) jsonObject.get("products").toString();
System.out.println("Testing Parse Value = "+name);
request.payload = name;
JSONArray companyList = (JSONArray) jsonObject.get("code");
Iterator<String> iterator = companyList.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
我知道productsApp13
或code
關鍵不是一個數組,而我不能夠識別讀取此特定值的任何方法。
此外,我也想知道我怎麼可以修改這個值,我的有效載荷
有什麼問題'((的JSONObject)((的JSONObject)jsonObject.get( 「產品」))獲得( 「productsApp13」))。獲得( 「代碼」)'? – Smutje
它給了我一個錯誤..它不允許再次.get。 –
請添加'JSONObject'的完全限定名稱,我使用了'wslite.json.JSONObject',並且可以通過強制轉換來完成此操作。 – Smutje