0

MONGO C++ API を使用して、次のような一連のレコードを処理しようとしています...「エントリ」配列の行数は可変です: 13 または 7 です。

{ "_id" : ObjectId("541af7a4c9c7450a5a5c7e8e"), "SvId" : "SV120", "UTCTime" : "2014-09-18T15:17:56.541Z", "Interval" : 10, "HPLANC" : "DownlinkA", 
    "Entries" : [        
        [       {       "IPAddress" : "172.20.10.20" },     {       "Port" : 4096 },        
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.10.20" },    {        "Port" : 4097 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.10.20" },         {       "Port" : 4098 },
                {        "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.10.20" },         {       "Port" : 4099 },
                {       "MessageCount" : "0" },     {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.10.20" },         {       "Port" : 4103 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],      
        [       {       "IPAddress" : "172.20.100.10" },        {       "Port" : 4102 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.100.10" },         {       "Port" : 4104 }, 
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.150.10" },    {       "Port" : 4100 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.200.10" },        {       "Port" : 4100 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.200.10" },        {       "Port" : 4150 },
                {       "MessageCount" : "0" },     {       "ByteCount" : "0" } ],  
        [       {       "IPAddress" : "172.20.200.10" },        {       "Port" : 4151 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],      
        [       {       "IPAddress" : "172.20.200.10" },        {       "Port" : 4152 },
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ],  
        [       {        "IPAddress" : "172.20.200.10" },        {       "Port" : 4153 }, 
                {       "MessageCount" : "0" },         {       "ByteCount" : "0" } ] ] }

UTCTime と SvId に基づいてコレクションをクエリします...レコードを取得したときに、それらすべてをステップスルーする方法がわかりません...

通常、カーソルを取得し、返されたレコードのセットを "next()" でループ処理するだけですが、7 または 13 のエントリを持つ "Entries" フィールドができました。これらの各アイテムにアクセスするにはどうすればよいですか? それらをループするために使用できる何らかの「サブカーソル」が必要だと思います。

API と例を調べていますが、ネストされた配列についてはあまりありません。

ありがとう、

リック

4

1 に答える 1