Exemplo n.º 1
0
        static void Main(string[] args)
        {
            Console.OutputEncoding = Encoding.UTF8;
            string[] lines = File.ReadAllLines(args[1], Encoding.UTF8);

            Type            parseType       = (Type)int.Parse(args[0]);
            CategoryChooser categoryChooser = new CategoryChooser(parseType);
            IParser         parser          = null;

            switch (parseType)
            {
            case Type.Personal:
            case Type.Common:
                parser = new BankStatementParser(categoryChooser);
                break;

            case Type.Revolut:
                parser = new RevolutStatementParser(categoryChooser);
                break;

            case Type.SpendingTraker:
                parser = new SpendingTrackerStatementParser(null);
                break;

            default:
                throw new ArgumentException("Unknown parse type.");
            }
            string result = parser.ParseText(lines);

            File.WriteAllText($"result-{parseType}-{Guid.NewGuid().ToString()}.csv", result, Encoding.UTF8);
            System.Console.WriteLine("Done!");
        }
Exemplo n.º 2
0
 public RevolutStatementParser(CategoryChooser categoryChooser)
 {
     this.categoryChooser = categoryChooser;
 }
 public BankStatementParser(CategoryChooser categoryChooser)
 {
     this.categoryChooser = categoryChooser;
 }
 public SpendingTrackerStatementParser(CategoryChooser categoryChooser)
 {
     this.categoryChooser = categoryChooser;
 }