Example #1
0
        static void Main(string[] args)
        {
            string inputPath;

            if (args.Length != 1)
            {
                return;
            }
            else
            {
                inputPath = args[0];
            }

            var inputDir               = Path.GetDirectoryName(inputPath);
            var inputFileName          = Path.GetFileNameWithoutExtension(inputPath);
            var inputFileNameExtension = Path.GetExtension(inputPath);
            var outputPath             = Path.Combine(inputDir, inputFileName + "_Processed" + inputFileNameExtension);

            var lines = new NonBlankFileLines(inputPath);

            using (var writer = new StreamWriter(outputPath))
            {
                writer.Write(lines.GetHeader);
                var entries            = GetEntriesFromLines(lines);
                var transactionFactory = new TransactionFactory(entries);
                foreach (var singleTransaction in transactionFactory)
                {
                    writer.Write(singleTransaction);
                }
            }
        }
Example #2
0
        private static CSVEntry[] GetEntriesFromLines(NonBlankFileLines lines)
        {
            var engine         = new FileHelperEngine <CSVEntry>();
            var aggregateLines = lines.Aggregate((working, next) => { return(working + Environment.NewLine + next); });

            aggregateLines = aggregateLines.TrimEnd('\r', '\n', '\0');
            var entries = engine.ReadString(aggregateLines);

            return(entries);
        }