MetaTrader 5 / 라이브러리
JSON - MetaTrader 5용 라이브러리
155
이것은 mql5에서 json 직렬화 및 역직렬화 기능을 구현한 것입니다
npm 패키지 관리자를 사용하여 다운로드할 수도 있습니다
저자: 쿠즈메 셰벨레프(seffele@gmail.com)
github: https://github.com/Senails/mql5-json
npm 패키지 관리자를 사용하여 다운로드할 수도 있습니다
npm i mql5-json예제:
#include "node_modules/mql5-json/index.mqh" void OnStart () { JSON::Object* json1 = new JSON::Object() .setProperty( "number" , 123456 ) .setProperty( "string" , "text" ) .setProperty( "boolean" , true ) .setProperty( "object" , new JSON::Object() .setProperty( "number" , 123456 ) .setProperty( "string" , "text" ) .setProperty( "boolean" , true ) .setProperty( "array" , new JSON::Array()) ) .setProperty( "array" , new JSON::Array() .add( true ) // 부울 .add( 123456 ) // 숫자 .add( "string" ) // 문자열 .add( new JSON::Object() .setProperty( "number" , 123456 ) .setProperty( "string" , "text" ) ) .add( new JSON::Array() .add( true ) .add( 123456 ) .add( "string" ) ) ); string exampleText = json1.toString(); Print (exampleText); JSON::Object* json2 = new JSON::Object(exampleText); string objectKeys[]; json2.getKeysToArray(objectKeys); if ( json2.hasValue( "array" ) && json2.isArray( "array" ) && json2.getArray( "array" ).getLength() > 4 && json2.getArray( "array" ).isBoolean( 0 ) && json2.getArray( "array" ).getBoolean( 0 ) == true && json2.getArray( "array" ).isObject( 3 ) && json2.getArray( "array" ).getObject( 3 ).isString( "string" ) && json2.getArray( "array" ).getObject( 3 ).getString( "string" ) == "text" && json2.getArray( "array" ).getObject( 3 ).isNumber( "number" ) && json2.getArray( "array" ).getObject( 3 ).getNumber( "number" ) == double ( 123456 ) ) { Print (json2.toString()); Print (json2.toString() == json1.toString()); } delete json1; delete json2; }
저자: 쿠즈메 셰벨레프(seffele@gmail.com)
github: https://github.com/Senails/mql5-json
MetaQuotes Ltd에서 러시아어로 번역함.
원본 코드: https://www.mql5.com/ru/code/53107