70 lines
2.9 KiB
Plaintext
70 lines
2.9 KiB
Plaintext
//+------------------------------------------------------------------+
|
|
//| Demo_FileGetInteger.mq5 |
|
|
//| Copyright 2013, MetaQuotes Software Corp. |
|
|
//| http://www.mql5.com |
|
|
//+------------------------------------------------------------------+
|
|
#property copyright "Copyright 2013, MetaQuotes Software Corp."
|
|
#property link "http://www.mql5.com"
|
|
#property version "1.00"
|
|
//--- display the window of input parameters when launching the script
|
|
#property script_show_inputs
|
|
//--- input parameters
|
|
input string InpFileName="data.csv";
|
|
input string InpDirectoryName="SomeFolder";
|
|
//+------------------------------------------------------------------+
|
|
//| Script program start function |
|
|
//+------------------------------------------------------------------+
|
|
void OnStart()
|
|
{
|
|
string path=InpDirectoryName+"//"+InpFileName;
|
|
long l=0;
|
|
//--- open the file
|
|
ResetLastError();
|
|
int handle=FileOpen(path,FILE_READ|FILE_CSV);
|
|
if(handle!=INVALID_HANDLE)
|
|
{
|
|
//--- print all information about the file
|
|
Print(InpFileName," file info:");
|
|
FileInfo(handle,FILE_EXISTS,l,"bool");
|
|
FileInfo(handle,FILE_CREATE_DATE,l,"date");
|
|
FileInfo(handle,FILE_MODIFY_DATE,l,"date");
|
|
FileInfo(handle,FILE_ACCESS_DATE,l,"date");
|
|
FileInfo(handle,FILE_SIZE,l,"other");
|
|
FileInfo(handle,FILE_POSITION,l,"other");
|
|
FileInfo(handle,FILE_END,l,"bool");
|
|
FileInfo(handle,FILE_IS_COMMON,l,"bool");
|
|
FileInfo(handle,FILE_IS_TEXT,l,"bool");
|
|
FileInfo(handle,FILE_IS_BINARY,l,"bool");
|
|
FileInfo(handle,FILE_IS_CSV,l,"bool");
|
|
FileInfo(handle,FILE_IS_ANSI,l,"bool");
|
|
FileInfo(handle,FILE_IS_READABLE,l,"bool");
|
|
FileInfo(handle,FILE_IS_WRITABLE,l,"bool");
|
|
//--- close the file
|
|
FileClose(handle);
|
|
}
|
|
else
|
|
PrintFormat("%s file didn't open, ErrorCode = %d",InpFileName,GetLastError());
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
//| Display the value of the file property |
|
|
//+------------------------------------------------------------------+
|
|
void FileInfo(const int handle,const ENUM_FILE_PROPERTY_INTEGER id,
|
|
long l,const string type)
|
|
{
|
|
//--- receive the property value
|
|
ResetLastError();
|
|
if((l=FileGetInteger(handle,id))!=-1)
|
|
{
|
|
//--- the value received, display it in the correct format
|
|
if(!StringCompare(type,"bool"))
|
|
Print(EnumToString(id)," = ",l ? "true" : "false");
|
|
if(!StringCompare(type,"date"))
|
|
Print(EnumToString(id)," = ",(datetime)l);
|
|
if(!StringCompare(type,"other"))
|
|
Print(EnumToString(id)," = ",l);
|
|
}
|
|
else
|
|
Print("Error, Code = ",GetLastError());
|
|
}
|
|
//+------------------------------------------------------------------+
|