Ejemplo n.º 1
0
    static void ReadActors(MoviesDB moviesDB, string path, bool printSep, int width)
    {
        byte[] content = File.ReadAllBytes(path + "/actors.csv");

        long msecs1 = Environment.TickCount;

        bool indexCreationTriggered = false;

        CsvReader reader = new CsvReader(content);

        reader.SkipLine();
        while (!reader.Eof())
        {
            int id = (int)reader.ReadLong();
            reader.Skip(';');
            string firstName = reader.ReadString();
            reader.Skip(';');
            string lastName = reader.ReadString();
            reader.Skip(';');
            string genderStr = reader.ReadString();
            reader.SkipLine();

            string gender;
            if (genderStr.Equals("M"))
            {
                gender = "male";
            }
            else if (genderStr.Equals("F"))
            {
                gender = "female";
            }
            else
            {
                throw new Exception();
            }

            moviesDB.AddActor(id, firstName, lastName, gender);

            if (!indexCreationTriggered)
            {
                moviesDB.ActorsByFirstName("...");
                moviesDB.ActorsByLastName("...");
                indexCreationTriggered = true;
            }
        }

        long msecs2 = Environment.TickCount;

        PrintTime(msecs2 - msecs1, printSep, width);
    }