2 changed files with 112 additions and 0 deletions
@ -0,0 +1,9 @@ |
|||||
|
import lib_16a_soubory |
||||
|
|
||||
|
tsoubor = "vypis_knihvona.txt" |
||||
|
lib_16a_soubory.vytvor_soubor(tsoubor,"Vypis") |
||||
|
for i in range(10): |
||||
|
if i == 7 or i == 3: |
||||
|
lib_16a_soubory.pridej_do_souboru(tsoubor,f"Test{i}",False) |
||||
|
continue |
||||
|
lib_16a_soubory.pridej_do_souboru(tsoubor,f"Test{i}") |
||||
@ -0,0 +1,103 @@ |
|||||
|
import os |
||||
|
import datetime |
||||
|
import time |
||||
|
|
||||
|
def oddelovac(): |
||||
|
print("\n"+"="*50) |
||||
|
|
||||
|
def vytvor_soubor(nazev, obsah, novy_radek=True): |
||||
|
""" |
||||
|
Vytvoří nový soubor a zapíše do něj |
||||
|
Args: |
||||
|
nazev (str): Název souboru |
||||
|
obsah (str): Text k zapsání |
||||
|
novy_radek (bool): True na přídání "ukončení řádku" na konec zprávy |
||||
|
Returns: |
||||
|
bool: True pokud je soubor úspěšně zapsán, False pokud ne |
||||
|
""" |
||||
|
try: |
||||
|
with open(nazev, mode="w", encoding="utf-8") as soubor: |
||||
|
soubor.write(obsah) |
||||
|
if novy_radek: |
||||
|
soubor.write("\n") |
||||
|
print(f"Soubor {nazev} byl vytvořen") |
||||
|
return True |
||||
|
except Exception as e: |
||||
|
print(f"chyba při vytváření: {e}") |
||||
|
return False |
||||
|
|
||||
|
def precti_soubor(nazev): |
||||
|
""" |
||||
|
Přečte obsah souboru a vrátí ho jako string |
||||
|
Args: |
||||
|
nazev (str): název souboru |
||||
|
Returns: |
||||
|
str: Obsah souboru, nebo None pokud soubor neexistuje |
||||
|
""" |
||||
|
try: |
||||
|
with open(nazev,mode="r",encoding="utf-8") as soubor: |
||||
|
obsah = soubor.read() |
||||
|
print(f"Soubor {nazev} byl úspěšně přečten") |
||||
|
return obsah |
||||
|
except FileNotFoundError: |
||||
|
print(f"Soubor {nazev} neexistuje") |
||||
|
return None |
||||
|
except Exception as e: |
||||
|
print(f" chyba při čtení souboru: {e}") |
||||
|
return None |
||||
|
|
||||
|
def pridej_do_souboru(nazev, text, novy_radek=True): |
||||
|
""" |
||||
|
Přída textž na konec existujícího souboru. |
||||
|
Args: |
||||
|
nazev (str): Název soubvoru |
||||
|
text (str): Text k přídání |
||||
|
novy_radek (bool): True na přídání "ukončení řádku" na konec zprávy |
||||
|
|
||||
|
Returns: |
||||
|
bool: True pokud se podařilo, False pokud ne |
||||
|
""" |
||||
|
try: |
||||
|
with open(nazev, mode="a",encoding="utf-8") as soubor: |
||||
|
soubor.write(text) |
||||
|
if novy_radek: |
||||
|
soubor.write("\n") |
||||
|
print(f"Text byl přidán do souboru {nazev}") |
||||
|
return True |
||||
|
except Exception as e: |
||||
|
print(f"chyba při přídávání textu: {e}") |
||||
|
return False |
||||
|
|
||||
|
def existuje_soubor(nazev): |
||||
|
""" |
||||
|
Zkontroluje jestli soubor existuje |
||||
|
Args: |
||||
|
nazev (str): název souboru |
||||
|
Returns: |
||||
|
bool: True pokud existuje |
||||
|
""" |
||||
|
return os.path.exists(nazev) |
||||
|
|
||||
|
def vypis_info_o_souboru(nazev): |
||||
|
""" |
||||
|
Vypíše informace o souboru |
||||
|
Args: nazev (str):název souboru |
||||
|
""" |
||||
|
print(f"infomrace o {nazev}") |
||||
|
if not existuje_soubor(nazev): |
||||
|
print("Soubor neexistuje, nelze vypsat info") |
||||
|
return |
||||
|
print("Soubor existuje ☺") |
||||
|
velikost = os.path.getsize(nazev) |
||||
|
print(f"Velikost: {velikost} bajtů") |
||||
|
cas_upravy = os.path.getmtime(nazev) |
||||
|
datum = datetime.datetime.fromtimestamp(cas_upravy) |
||||
|
print(f"Poslední úprava: {datum.strftime('%d.%m.%Y %H:%M:%S')}") |
||||
|
|
||||
|
|
||||
|
if __name__ == "__main__": |
||||
|
vytvor_soubor("textak.txt","TOTO JE TEST") |
||||
|
obsah_souboru = precti_soubor("textak.txt") |
||||
|
print(f"obsah souboru: {obsah_souboru}") |
||||
|
vypis_info_o_souboru("textak.txt") |
||||
|
|
||||
Loading…
Reference in new issue