python, faire en sorte que stdin/stdout lisent et écrivent en binaire

2012-10-10

J’ai écrit un petit programme qui s’inspire de cut en python.

La lecture et l’écriture pouvant se faire sur l’entrée/sortie standard (sources ucut), j’avais des problèmes de “‘ascii’ codec can’t decode byte”…

Pour y remédier, j’ai “transformé” les flux standard (mode texte) en flux binaires de la manière suivante :

import sys
import os 

sys.stdin = os.fdopen(sys.stdin.fileno(), 'rb', 0)
sys.stdout = os.fdopen(sys.stdout.fileno(), 'wb', 0)