改行が\r\nから\nに変わったとかじゃないの?

あとeof()の使い方が間違ってる
それじゃ一回余計にread呼んでByteNumも1足しちゃうよ