从for循环的JsonArray中获取GetJsonObject显示语法错误

本文关键字:GetJsonObject 显示 语法 错误 获取 for 循环 JsonArray | 更新日期: 2023-09-27 18:18:15

     JsonObject jObj = JsonObject.Parse(json);
     JsonArray jArr = jObj.GetNamedArray("records");
     for (int i = 0; i < jArr.Count; i++)
     {
        JsonObject innerObj = jArr.GetObjectAt(i);
        mData[i] = new Data(innerObj .GetNamedString("countryName"), innerObj .GetNamedString("countryId"), innerObj.GetNamedString("callPrefix"), innerObj .GetNamedString("isoCode"));
     }

Visual studio显示语法错误:jar . getobjectat (uint)的最佳重载方法有一个无效参数

从for循环的JsonArray中获取GetJsonObject显示语法错误

正如文档中所述,您应该使用int index,因此:

JsonObject jObj = JsonObject.Parse(json);
JsonArray jArr = jObj.GetNamedArray("records");
for (uint i = 0; i < jArr.Count; i++)
{
   JsonObject innerObj = jArr.GetObjectAt(i);
   mData[i] = new Data(innerObj .GetNamedString("countryName"), innerObj .GetNamedString("countryId"), innerObj.GetNamedString("callPrefix"), innerObj .GetNamedString("isoCode"));
}

应该编译。