Add Kod: Przetwarzanie plików
52
Kod%3A-Przetwarzanie-plik%C3%B3w.md
Normal file
52
Kod%3A-Przetwarzanie-plik%C3%B3w.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# Przetwarzanie plików
|
||||
|
||||
Klasa `dataProcess` odpowiedzialna za przetwarzanie plików wejściowych i generowanie plików wyjściowych
|
||||
|
||||
### Główna funkcja klasy (`start`)
|
||||
|
||||
Funkcja ta odpowiedzialna za zainicjowanie kolejnych funkcji w odpowiedniej kolejności oraz zwrócenie informacji o błędach lub pomyślnym wykonaniu polecenia
|
||||
1. Inicjacja funkcji `__checkIfAtLeastOneInputFileIsFilled` w celu sprawdzenia czy przynajmniej jedno pole plików wejściowych zostało wypełnione
|
||||
2. Inicjacja funkcji `__checkIfInputFilesIsReadable` w celu sprawdzenia czy pliki wejściowe, do których ścieżki zostały podane, są możliwe do odczytania
|
||||
3. Inicjacja funkcji `__checkIfInputFilesFormatPresetsExist` w celu sprawdzenia czy format presety, które zostały wybrane, istnieją
|
||||
4. Inicjacja funkcji `__getData` w celu zebrania danych z plików wejściowych
|
||||
5. Dla każdego zbioru danych - `for x in data` (dla każdej osoby), inicjacja funkcji `__checkLogin`, `__checkFname`, `__checkLname`, oraz dla uczniów `__checkSchool`, `__checkClass`, w celu sprawdzenia poprawności danych
|
||||
6. Inicjacja funkcji `__processData` w celu przetworzenia danych w linie gotowe do zapisania w plikach wyjściowych
|
||||
7. Inicjacja funkcji `__checkIfCreatingOutputFilesIsPossible` w celu sprawdzenia czy możliwe jest utworzenie plików wyjściowych
|
||||
8. Inicjacja funkcji `__saveData` w celu zapisania danych w plikach wyjściowych
|
||||
9. Funkcja zwraca listę zawierającą zmienne boolean potwierdzające w którym momencie zakończyło się wykonywanie funkcji (z powodu błędu lub pomyślnego ukończenia operacji)
|
||||
|
||||
### Funkcje sprawdzające istnienie
|
||||
|
||||
- `__checkIfAtLeastOneInputFileIsFilled` - sprawdza czy przynajmniej jedno pole plików wejściowych zostało wypełnione oraz zwraca dane z wypełnionych pól
|
||||
- `__checkIfInputFilesIsReadable` - sprawdza czy pliki wejściowe są możliwe do odczytania
|
||||
- `__checkIfInputFilesFormatPresetsExist` - sprawdza czy wybrane format presety istnieją
|
||||
- `__checkIfCreatingOutputFilesIsPossible` - sprawdza czy utworzenie plików wyjściowych jest możliwe
|
||||
|
||||
### Funkcje sprawdzające poprawność
|
||||
|
||||
Funkcje te sprawdzają poprawność określonych typów danych.
|
||||
|
||||
### Wyodrębnienie danych z plików (`__getData`)
|
||||
|
||||
Funkcja odpowiedzialna jest za wyodrębnienie danych z pliku (`path`) na podstawie określonego format presetu (`format`)
|
||||
|
||||
Dla każdego zbioru ścieżek plików wejściowych i format presetów (`for x in input`):
|
||||
|
||||
1. Pobranie danych z pliku formatu (za pomocą funkcji `FMT.R`)
|
||||
2. Pobranie zawartości z pliku wyjściowego i podzielenie ich na zbiory danych pojedyńczych osób (`.split(personseparator)`)
|
||||
|
||||
Dla każdego zbioru danych pojedyńczych osób (`for x in file`):
|
||||
|
||||
3. Dzielenie zbioru danych na linie (`x.split(linesSeparator)`)
|
||||
4. Dla każdej linii: dzielenie danych na pojedyńcze segmenty separatorami z listy `dataSeparators`
|
||||
5. Wyodrębnienie wymaganych danych ze zbioru
|
||||
6. Dodanie danych pojedyńczej osoby do listy `data`
|
||||
|
||||
### Przetworzenie danych (`__processData`)
|
||||
|
||||
Funkcja odpowiedzialna jest za przetworzenie danych w linie gotowe do zapisania w plikach wyjściowych
|
||||
Funkcja zwraca listę `[mailData, officeData]`
|
||||
|
||||
### Zapisanie danych (`__saveData`)
|
||||
|
||||
Funkcja odpowiedzialna jest za zapisanie danych w plikach wyjściowych dla poczty i dla office
|
||||
Reference in New Issue
Block a user