문제

Fix 메시지 (모두 및 MarketDatainCrementalRefresh (x를 입력)가있는 텍스트 파일이 있으며 C #에서 QuickFix를 사용하여 MarketDataIncrementRefresh 메시지를 문자열에서 꺼냅니다.

모든 제안?

여기에 하나의 라인이 어떻게 생겼는지의 예제는 다음과 같습니다.

1128= 9= 279= 12= 848= 812201 83= 1243518 107= GEZ2 269= 1 270= 9825.0 271== 848= 1270= 9826.0 271= 127= 9826.0 271= 453 273= 205433000 336= 2 346= 21 1023= 3 10= 058

도움이 되었습니까?

해결책

기본적으로 이것은 그 방법입니다.

string line = sr.ReadLine();
QuickFix42.MessageFactory fac = new QuickFix42.MessageFactory();
QuickFix.MsgType msgType = QuickFix.Message.identifyType(line);
QuickFix.Message message = fac.create("", msgType.getObject() as string);
message.setString(line, false);
.

공장이 주어진 적절한 메시지 유형을 만듭니다.이 경우 type이 {x} 이었기 때문에 quickfix.message 메시지는 marketDatainCrementalRefresh의 포인터이고 message.setString은 주어진 문자열에서 나머지 소품을 설정합니다..

다른 팁

Java에서

를 사용할 수 있습니다.

MessageUtils.parse(MessageFactory messageFactory, DataDictionary dataDictionary, java.lang.String messageString)

여기를 참조하십시오.

메시지 객체 자체의 여기를 참조하십시오 생성자를 사용하여

Message(java.lang.String string, DataDictionary dd, boolean validate) 
.

또는 fromString 방법 :

fromString(java.lang.String messageData, DataDictionary sessionDictionary, DataDictionary applicationDictionary, boolean doValidation) 
.

QuickFix / n

에 대해 비슷한 것을 찾을 수 있어야합니다.

나는 이 빌드만을 만드는 것을 발견했습니다.생성자를 사용하여 문자열의 메시지입니다.선택한 API에서 위의 해당 요소를 찾을 수 없으면이 문제가 작동하지 않아도됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top