You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
3.0 KiB
103 lines
3.0 KiB
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")
|
|
|
|
|