Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在quickfixj消息中获取重复组_Java_Quickfix_Quickfixj - Fatal编程技术网

Java 如何在quickfixj消息中获取重复组

Java 如何在quickfixj消息中获取重复组,java,quickfix,quickfixj,Java,Quickfix,Quickfixj,对于交易捕获报告之类的quickfixj消息,它有时可以具有嵌套的重复组。查看纽约证券交易所文件第10页的交易捕获报告信息: 比如说,如果需要获取partyID(448)、partyIDSource(447)和partyRole(452),那么如何使用Java和QuickFixJ Java api实现这一点呢?获取二级嵌套与获取一级组没有太大区别 我没有读你的纽约证券交易所的文件,但我假设,各方组在NoSides组中,就像在常规的FIX44规范中一样 这段代码可能会起作用。(我没有编译)我没有做

对于交易捕获报告之类的quickfixj消息,它有时可以具有嵌套的重复组。查看纽约证券交易所文件第10页的交易捕获报告信息:


比如说,如果需要获取partyID(448)、partyIDSource(447)和partyRole(452),那么如何使用Java和QuickFixJ Java api实现这一点呢?获取二级嵌套与获取一级组没有太大区别

我没有读你的纽约证券交易所的文件,但我假设,
各方
组在
NoSides
组中,就像在常规的FIX44规范中一样

这段代码可能会起作用。(我没有编译)我没有做任何组计数检查,但我想你知道这一部分

PartyID partyId = new PartyID();

// group
quickfix.fix44.TradeCaptureReport.NoSides sidesGroup = 
  new quickfix.fix44.TradeCaptureReport.NoSides();

// subgroup
quickfix.fix44.TradeCaptureReport.NoSides.NoPartyIDs partyIdsGroup =
  new quickfix.fix44.TradeCaptureReport.NoSides.NoPartyIDs();

// get first sidesGroup
message.getGroup(1, sidesGroup);

// get first partyIdsGroup out of first sidesGroup
sidesGroup.getGroup(1, partyIdsGroup);
// do something with it...

// get second partyIdsGroup out of first sidesGroup
sidesGroup.getGroup(2, partyIdsGroup);
// do something with it...

// -----
// get second sidesGroup
message.getGroup(2, sidesGroup);

// get first partyIdsGroup out of second sidesGroup
sidesGroup.getGroup(1, partyIdsGroup);

// and so on...

你看过文件了吗?看完文档后,如果你还需要帮助,可以问一个新的问题。我读了文档。它告诉你如何获得重复,而不是如何获得嵌套重复组。这是一样的,伙计。你试过了吗?我当然试过了。我不会浪费时间。但无论我尝试哪种方法,要么给我一些本地quickfixj异常,要么fieldnotfound异常,都有一种方法可以通过编程设置组,而不必执行1、2等操作。使用循环和递增int变量。(这个答案很明显,我想知道我是否误解了你的问题。)假设我收到一条修复消息,我想设置一些代码来获取所有组和组内的一个字段,而无需更改源代码。然后,我收到了另一条修复消息,其中包含不同数量的组,但仍然希望相同的源工作。我想要源代码来处理这些场景。请阅读组的计数器字段。例如,在上面的答案中,您可以提取
NoSides
整数字段。该值是需要循环的
元素的数量。