1
[
{
"name": "Test",
"type": "Private",
"item":[{"itmeNo":"PT-15003C","quantity":"3"},
{"itmeNo":"PT-15003C","quantity":"3"}],
"successMsg":"Item(s) added to the job list."
}
]
嗨, 我使用json.Above是我的JSON数据做数据参数在表单中输入多个数据一起,我想在一个形式,其中需要输入产品编号和数量一起进入这个数据。如何使用json使用数据参数化来完成。 当有一个关键一个值对,然后我的代码正在工作,但在这种情况下,任何人都可以帮助我获得解决方案吗?我已经为单个密钥对值编写了以下代码。使用JSON数据
public static Object[][] getData(String path) {
JSONParser parser = new JSONParser();
JSONArray jArray = null;
Object[][] testData = null;
try {
jArray = (JSONArray) parser.parse(new FileReader(System.getProperty("user.dir") + path));
testData = new Object[jArray.size()][1];
Hashtable<String, String> table = new Hashtable<String, String>();
int i = 0;
for (Object obj : jArray) {
table = new Hashtable<String, String>();
JSONObject objJson = (JSONObject) obj;
Set<?> keys = objJson.keySet();
Iterator a = keys.iterator();
while (a.hasNext()) {
String key = (String) a.next();
String value = (String) objJson.get(key);
// System.out.print("key : "+key);
// System.out.println(" value :"+value);
table.put(key, value);
}
testData[i][0] = table;
i++;
}
return testData;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
你的问题是不明确的,你究竟想干什么,请清除它。 – Vickyexpert
@Nikita:现在看起来好像你被困在“item”数组中,那里又有多个对象。如果是这种情况,那么你可以使用getJSONarray并将“item”传递给它,并在知道数组数目后重申数组中的对象。 – Max
您是否试图创建数据驱动的测试?如果是这种情况,可以使用TestNG和[data-provider-extension](https://github.com/cbeust/testng/wiki/3rd-party-extensions#data-provider-extension)。 – user861594