From 15115b4c52bfda0d1cca9fa1155beecbb873ec35 Mon Sep 17 00:00:00 2001 From: yctct Date: Sun, 7 Jun 2026 08:59:04 +0200 Subject: First commit, add all files --- py04/ex0/ft_ancient_text.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 py04/ex0/ft_ancient_text.py (limited to 'py04/ex0') diff --git a/py04/ex0/ft_ancient_text.py b/py04/ex0/ft_ancient_text.py new file mode 100755 index 0000000..152c0a2 --- /dev/null +++ b/py04/ex0/ft_ancient_text.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python3 + +import sys + + +def read_content() -> None: + file = None + try: + file = open(sys.argv[1]) + content = file.read() + print(f"Accessing file {sys.argv[1]}") + print("---") + print() + print(content) + except IndexError: + print("Usage: ft_ancient_text.py ") + except FileNotFoundError as e: + print(f"Error opening the file '{sys.argv[1]}':", e) + # trying to write when disk is full + # also catch permission errors + except OSError as e: + print(e) + # No permission to read or write + except PermissionError as e: + print(e) + # file encoded in a format other than UTF-8 + except UnicodeDecodeError as e: + print(e) + except IsADirectoryError as e: + print(e) + finally: + if file: + file.close() + print("---") + print(f"File '{sys.argv[1]}' closed.") + + +def main() -> None: + print("=== Cyber Archives Recovery ===") + read_content() + + +if __name__ == "__main__": + main() -- cgit v1.2.3