import chardet class TextParser: def parse(file_path: str) -> str: # 먼저 파일의 인코딩을 감지 with open(file_path, 'rb') as file: raw_data = file.read() result = chardet.detect(raw_data) encoding = result['encoding'] # 감지된 인코딩으로 파일 읽기 if encoding: try: with open(file_path, 'r', encoding=encoding) as file: text = file.read() return text except UnicodeDecodeError: raise ValueError(f"Could not decode the file with the detected encoding: {encoding}") else: raise ValueError("Could not detect the encoding of the file.")