-
文字列の操作を使用する方法: 入力されたファイル名を文字列として受け取り、文字列の末尾を調べて拡張子を判定します。以下はPythonの例です。
filename = input("ファイル名を入力してください: ") extension = filename.split(".")[-1] if extension == "txt": print("テキストファイルです。") elif extension == "jpg" or extension == "jpeg": print("JPEG画像です。") elif extension == "png": print("PNG画像です。") else: print("サポートされていないファイル形式です。")
-
正規表現を使用する方法: 正規表現を使用すると、ファイル名から拡張子を正確に抽出することができます。以下はPythonの例です。
import re filename = input("ファイル名を入力してください: ") extension = re.search(r"\.([a-zA-Z0-9]+)$", filename) if extension: extension = extension.group(1) if extension == "txt": print("テキストファイルです。") elif extension == "jpg" or extension == "jpeg": print("JPEG画像です。") elif extension == "png": print("PNG画像です。") else: print("サポートされていないファイル形式です。") else: print("拡張子が見つかりませんでした。")
-
ファイルのマジックナンバーを使用する方法: ファイルの先頭にあるバイト列を調べることで、ファイルの種類を判定することができます。以下はPythonの例です。
def get_file_extension(file_path): with open(file_path, "rb") as file: header = file.read(4) # 先頭4バイトを読み込む if header.startswith(b"\xFF\xD8\xFF"): return "jpeg" elif header.startswith(b"\x89\x50\x4E\x47"): return "png" elif header.startswith(b"\x47\x49\x46\x38"): return "gif" elif header.startswith(b"\x42\x4D"): return "bmp" else: return "unknown" file_path = input("ファイルパスを入力してください: ") extension = get_file_extension(file_path) if extension != "unknown": print(f"ファイルの拡張子は {extension} です。") else: print("サポートされていないファイル形式です。")
これらのコード例を使用して、ファイル拡張子を判定し、適切な処理を行うことができます。必要に応じて、拡張子や処理方法を追加または変更してください。