그래서 파일을 C ++의 프로그램으로 읽으려고하는데 파일 전체에 임의의 파일 끝이 있습니다. 파일을 읽으려고 할 때 ifstream은 파일 문자의 끝에 도달하면 읽기를 중지합니다. 이것은 파일을 읽기 위해 사용하는 코드입니다.
size_t bytesAvailable = 1000;
std::ifstream file(directory, std::ifstream::in);
unsigned char headDataBuffer[1000];
file.read((char*)(&headDataBuffer[0]), bytesAvailable);
내가 읽으려는 파일은 파일에이 정도까지 들어가지만 나중에 파일의 끝인 것으로 확인 된 특정 문자에 도달하면 중지됩니다. 나중에 많은 텍스트가 있지만 ifstream을 가져올 수 없습니다. 파일 문자의 끝 뒤에있는 모든 것을 읽으십시오. 파일을 더 작은 덩어리로 나눌 필요없이 전체 파일을 읽을 수있는 방법이 있습니까?
파일의 처음 몇 줄
˜1È £… .ƒÑäÄÕ!õÏ]ÀåM”Ú2jó8ÒQ;Fb#Ãë»Cé‚ 1³¸)æ¸)¼™Â¢¼mí¾J”ÜT’S·Õ}xÇ\'Ò¬Ëëk|&c
õe´ „[zÊN4äHH • Æpé € i‹, ɶ ‰ v % •• ¡ ÁÎ : ïÂOÚåÀ ‡ É = wí7iÓOQ3Fg, ‚¹ªGô“( 바로 여기에서 중지 ) I9Ḡ"æ £ / ¼ ™ Ù £« | ¿ ¿ FI € À ^ ‚ ‚2 tÁ [; Åéúî2`9es¹Va ° ÝNe- ~ 1È´ '}, •• ° ÛÙuòŸLÚá ‰ œÕ / 9ñ7, Õ [uv / † í] ¼CúŸ
바이너리 모드에서 파일을 열어보십시오. 일부 플랫폼에서 텍스트 모드 및 binary
모드는 행 끝을 LF로 해석하거나 제어 문자 (Ctrl + D 또는 Ctrl + Z)를 파일 끝으로 해석하는 것과 같이 다르게 작동합니다.
size_t bytesAvailable = 1000;
std::ifstream file(directory, std::ifstream::in|std::ifstream::binary);
unsigned char headDataBuffer[1000];
file.read((char*)(&headDataBuffer[0]), bytesAvailable);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다