파일 내용으로 text파일인지 이진파일인지 구별하는법

jongsuknim의 이미지

어떤 방법이 있을까요 추천해주세요..
쉽게 생각하면 byte 단위로 전부다 isprint(c)로 검사해서 할수 있을것도 같은데.. 다른 방법은 없을 까요?

plodder의 이미지

'file' 명령어를 이용하면 어떨지...

nthroot의 이미지

file 명령어 소스를 보면 파일의 앞 부분4086 바이트를 읽어서 ASCII 가 아닌 값이 포함되어 있는지 체크하는 방식으로 판단합니다.
(내부적으로 ASCII 문자열 테이블을 만들어서 쓰고 있습니다.)

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

nohmad의 이미지