MetaTrader 5 / ライブラリ
JSON - MetaTrader 5のためのライブラリ
289
これは、mql5におけるjsonシリアライゼーションとデシリアライゼーション機能の私の実装である
をダウンロードするには、npmパッケージ・マネージャーを使う こともできる。
作者: Kuzme Shevelev (seffele@gmail.com) github: https://github.com/Senails/mql5-json
npm i mql5-jsonexample:
をダウンロードするには、npmパッケージ・マネージャーを使う こともできる。
#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; }
作者: Kuzme Shevelev (seffele@gmail.com) github: https://github.com/Senails/mql5-json
MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/53107