콘텐츠로 건너뛰기

📝 텍스트 파일

테스트용 플레인 텍스트 파일

✅ 완전 무료 🚫 가입 불필요 ⚡ 즉시 다운로드
100 KB TXT

102,400 bytes

text/plain

100 MB TXT

104,857,600 bytes

text/plain

10 KB TXT

10,240 bytes

text/plain

10 MB TXT

10,485,760 bytes

text/plain

1 MB TXT

1,048,576 bytes

text/plain

텍스트 파일 소개

10 KB 부터 100 MB 까지의 플레인 텍스트 파일을 무료로 제공합니다. 텍스트 처리 검증, 로그 파일 시뮬레이션, 에디터의 대용량 파일 대응 확인에 쓸 수 있습니다.

플레인 텍스트에서 문제가 되는 변수는 문자 코드와 개행 코드 2 가지뿐입니다. 개행 코드별 파일(LF / CRLF / CR / 혼재)은 개행 코드 테스트 페이지에 있습니다.

자주 있는 이용 상황

관련 참조·기사

📖 자주 걸리는 지점

10 KB 부터 100 MB 까지의 플레인 텍스트입니다. 읽기 속도 측정이나 텍스트 처리 상한 확인에 쓸 수 있습니다. 플레인 텍스트에 올바른 형식이란 없습니다. 인코딩과 줄바꿈 코드는 밖에서 주어지는 정보이며 파일 자신은 밝히지 않습니다.

사례 무슨 일이 일어나는가 어떻게 하면 되는가
첫 줄 앞에 보이지 않는 문자가 들어간다 UTF-8 의 BOM (EF BB BF) 은 화면에 나오지 않습니다. 첫 줄의 키 이름이 id 가 되고 비교만 일치하지 않게 됩니다. head -c 3 file | xxd 로 확인할 수 있습니다. 읽을 때 제거하려면 PHP 는 선두 3 바이트를 비교하고, Python 은 encoding="utf-8-sig" 가 확실합니다.
도구에 따라 행 수가 다르다 wc -l줄바꿈 문자의 수를 셉니다. 마지막 줄에 줄바꿈이 없으면 1 적어져 에디터 표시와 어긋납니다. POSIX 상 텍스트 파일의 마지막 줄에도 줄바꿈이 필요합니다. 생성 측에서 마지막 줄에도 줄바꿈을 붙입니다. 차이가 깔끔해지고 행 수 불일치도 사라집니다. 혼재된 줄바꿈 코드가 의심스러울 때는 줄바꿈 코드별 테스트 파일로 동작을 확인할 수 있습니다.
100 MB 를 열었더니 프로세스가 죽는다 file_get_contents()readlines()전체를 메모리에 올립니다. 100 MB 파일에 대해 PHP 의 기본 memory_limit 로는 부족합니다. 행 단위로 돌립니다. PHP 는 fgets(), Python 은 for line in f. 메모리 사용량이 입력 크기에 비례하지 않는 형태로 해 두면 상한을 계속 올릴 필요가 없어집니다.

텍스트 파일은 자신이 어느 인코딩인지 밝히지 않습니다. BOM 이 있는 경우를 제외하면 판정은 모두 추측입니다. 가져오기 처리에서는 추측에 기대지 말고 사용자가 고르게 하거나 약속으로 고정하는 편이 결국 가장 견고합니다.