INNER CODE UNIT · Python
leer_texto
Hainrixz/whatsapp-agentkit · scripts/audit.py:126
def leer_texto(ruta: Path) -> str:
"""Lee un archivo de texto en UTF-8. Lanza FileNotFoundError si no existe."""
return ruta.read_text(encoding="utf-8")
def es_binario(ruta: Path) -> bool:
"""
Heuristica: si el primer bloque tiene un byte nulo o no es UTF-8, es binario.
Usamos un decodificador incremental a proposito: leer 4096 bytes puede
cortar un caracter multibyte por la mitad (los recuadros ── de este repo
ocupan 3 bytes), y un decode() comun lo tomaria como binario, salteando
el archivo del chequeo 3 sin decir nada.
"""
try:
with ruta.open("rb") as f:
trozo = f.read(4096)
if b"\x00" in trozo: