def chunker(file,splitter=";"): r = c = "" while (c or not r) and (not c == splitter) c = file.read(1) r.append(c) return r I suspect I'm missing something to make this prettier, but file.read(1) seems to be the way to go through a file bytewise. mt