Simplest CSV file reader – script MetaTrader 5

Use this simplest class to read CSV file with out any preparations and types casting declarations.

Find the shortest usage example below.

string Filename = "filename.csv";

CDKSimplestCSVReader CSVFile; // Create class object

// Read file pass FILE_ANSI for ANSI files or another flag for another codepage.
// Give values separator and flag of 1sr line header in the file 
if (CSVFile.ReadCSV(Filename, FILE_ANSI, ";", true)) {
  PrintFormat("Successfully read %d lines from CSV file with %d columns: %s", 
              CSVFile.RowCount(),     // Return data lines count without header 
              CSVFile.ColumnCount(),  // Return columns count from 1st line of the file
              Filename);
  
  // Print all columns of the file from 1st line
  for (int i = 0; i < CSVFile.ColumnCount(); i++) {   
    PrintFormat("  Column Index=#%d; Name=%s", i, CSVFile.GetColumn(i));
  }         
              
  // Print values from all rows
  for (int i = 0; i < CSVFile.RowCount(); i++) {
    PrintFormat("Row %d: Value by column name: CSVFile.GetValue(i, ""Time"")=%s", i, CSVFile.GetValue(i, "Time")); // Get value from i line by column name
    PrintFormat("Row %d: Value by column index: CSVFile.GetValue(i, 0)=%s", i, CSVFile.GetValue(i, 0));            // Get value from i line by column index
  }    
} 
else
  PrintFormat("Error reading CSV file or file has now any rows: %s", Filename);   
    📈 ROBOTFX MetaTrader Expert Advisors and Indicators to maximize profits and minimize the risks