FileRead String mql5 vs mql4

 
Hello! I write into a file with mql5 script 
#property strict
#define FILE_NAME  "test.bin"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart(void)
  {
   FileDelete(FILE_NAME);
         int file = FileOpen(FILE_NAME,FILE_WRITE|FILE_BIN|FILE_COMMON);
         if(file!=INVALID_HANDLE)
           {
                  FileWriteLong(file,(long)12345678);
                  string sym="EURUSD";
                  int size=StringLen(sym);
                  FileWriteInteger(file,size);
                  FileWriteString(file,sym,size);
        }
          FileClose(file);
     }

and I want to read it with a mql script :

#property strict
#define FILE_NAME    "test.bin" 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart(void)
  {
   int file = FileOpen(FILE_NAME,FILE_READ|FILE_BIN|FILE_COMMON);
   if(file!=INVALID_HANDLE)
     {
      while(!FileIsEnding(file))
        {
         //=====================RECEIVE DATA ========================================
          long num = FileReadLong(file);
         int str_size=FileReadInteger(file,INT_VALUE);
        
         string str=FileReadString(file,str_size);
          PrintFormat("num=%i, sym=%s, size=%i",num,str,str_size);
        }
      FileClose(file);
     }
  }

And cannot read correctly .

Kindly advise! 

Documentation on MQL5: Constants, Enumerations and Structures / Environment State / Running MQL5 Program Properties
Documentation on MQL5: Constants, Enumerations and Structures / Environment State / Running MQL5 Program Properties
  • www.mql5.com
To obtain information about the currently running mql5 program, constants from ENUM_MQL_INFO_INTEGER and ENUM_MQL_INFO_STRING are used. For...
 
FILE_ANSI
FILE_UNICODE