Example #1
0
        /// <summary>
        /// Main Class
        /// </summary>
        /// <param name="args">Argumentos de entrada por liena de comandos</param>
        static void Main(string[] args)
        {
            // Control del directorio a analizar
            string rootFolder = args[0];

            if (String.IsNullOrEmpty(args[0]))
            {
                rootFolder = Directory.GetCurrentDirectory();
            }

            //Cargar los datos de los ficheros en las estructuras de cada exchange
            List <DeltaData> deltaOperations = new List <DeltaData>();

            foreach (string folder in Directory.GetDirectories(rootFolder))
            {
                foreach (string file in Directory.GetFiles(folder))
                {
                    switch (Path.GetFileName(folder))
                    {
                    case "binance":
                        Console.WriteLine(Path.GetFileName(folder));
                        break;

                    case "bittrex":
                        try {
                            using (StreamReader sr = new StreamReader(file)) {
                                sr.ReadLine();     //Descarte de la primera line de cabecera

                                string line = string.Empty;
                                while (!sr.EndOfStream)
                                {
                                    line = sr.ReadLine();
                                    deltaOperations.Add(new BittrexData(line));
                                }
                            }
                        } catch (Exception e) {
                            Console.WriteLine("The File could not be read:");
                            Console.WriteLine(e.Message);
                            Console.ReadLine();
                        }
                        Console.WriteLine(Path.GetFileName(file));
                        break;

                    case "coinbase":
                        Console.WriteLine(Path.GetFileName(folder));
                        break;

                    case "kraken":
                        Console.WriteLine(Path.GetFileName(folder));
                        break;

                    case "poloniex":
                        Console.WriteLine(Path.GetFileName(folder));
                        break;
                    }
                }
            }

            DeltaData.PojoToCSV(deltaOperations, rootFolder);
        }