C 언어를 사용하여 파일에서 알 수없는 문자 수를 계산하는 쉬운 방법을 찾고 있습니다. 당신의 도움이C 언어의 파일에서 알 수없는 문자 수를 계산합니다.
답변
편집 : 당신은 아마이 아래의 답변을 읽고 싶어.
읽기 작업 결과를 EOF
(파일 끝)과 비교하여 파일 끝까지 문자를 계속 읽을 수 있습니다. 한 번에 하나씩 처리하면 다른 통계도 수집 할 수 있습니다.
char nextChar = getc(yourFilePointer);
int numCharacters = 0;
while (nextChar != EOF) {
//Do something else, like collect statistics
numCharacters++;
nextChar = getc(yourFilePointer);
}
덕분에 많은 도움을 얻었습니다. 감사합니다! –
POSIX 및 방법 (당신이 원하는 아마 무엇을) 감사 :
off_t get_file_length(FILE *file) {
fpos_t position; // fpos_t may be a struct and store multibyte info
off_t length; // off_t is integral type, perhaps long long
fgetpos(file, &position); // save previous position in file
fseeko(file, 0, SEEK_END); // seek to end
length = ftello(file); // determine offset of end
fsetpos(file, &position); // restore position
return length;
}
표준 C의 방법은 (학자 연하기) :
long get_file_length(FILE *file) {
fpos_t position; // fpos_t may be a struct and store multibyte info
long length; // break support for large files on 32-bit systems
fgetpos(file, &position); // save previous position in file
if (fseek(file, 0, SEEK_END) // seek to end
|| (length = ftell(file)) == -1) { // determine offset of end
perror("Finding file length"); // handle overflow
}
fsetpos(file, &position); // restore position
return length;
}
당신의 수를 알고 싶다면 멀티 바이트 문자를 사용하려면 예 : fgetwc
으로 전체 파일을 읽어야합니다.
'fsetpos()'를 사용하는 대신'rewind()'가 좀 더 친근하다. – duck
이 당신이 파일의 크기를 찾고 있다면 당신은
while (fgetc(file_handler)!=EOF)
{
//test condition here if neccesary.
count++;
}
일부 문자를 계산 (예를 들어, 인쇄 가능한 문자)해야하는 경우 시작 가야의 fseek과/ftell이 솔루션은 적은 것 같다 비싼 syscall.
꽤 많은 시간이 걸린다. –
예, 그렇습니다. :(:( – Tom
FILE *source = fopen("File.txt", "r");
fseek(source, 0, SEEK_END);
int byteCount = ftell(source);
fclose(source);
/* wc is used to store the result */
long wc;
/* Open your file */
FILE * fd = fopen("myfile", "r");
/* Jump to its end */
fseek(fd, 0, SEEK_END);
/* Retrieve current position in the file, expressed in bytes from the start */
wc = ftell(fd);
/* close your file */
fclose(fd);
'fd'는 파일 설명자를위한 좋은 이름입니다. int가됩니다. – Potatoswatter
- 1. 텍스트 파일에서 알 수없는 문자 제거
- 2. 알 수없는 문자
- 3. MySQL 데이터베이스의 유니 코드 문자 수를 계산합니다.
- 4. mbsctows는 배열의 넓은 문자 수를 계산합니다.
- 5. 알 수없는 문자 인코딩의 문자 읽기
- 6. 특정 요소 수를 계산합니다.
- 7. Visual Studio 2010에서 선택하기 위해 공백이 아닌 문자 수를 계산합니다.
- 8. 파일에서 문자 읽기 - C#
- 9. 계산 항목 수를 기준으로 페이지 수를 계산합니다.
- 10. 문제 전자 메일 보내기, 알 수없는 문자!
- 11. 앵커 태그의 클릭 수를 계산합니다.
- 12. 알 수없는 커서 번호
- 13. jQuery는 트윗 사이의 분 수를 계산합니다.
- 14. 알 수없는 인수에서 C++ sprintf
- 15. C#을 알 수없는 유형
- 16. YouTube로 이동하는 YouTube 플레이어 클릭 수를 계산합니다.
- 17. 타임 스탬프에서 진행중인 이벤트 수를 계산합니다.
- 18. 열 수를 알 수없는 data.frame을 만드는 방법은 무엇입니까?
- 19. Java 알 수없는 출력
- 20. 여러 언어의 이스케이프 문자 목록
- 21. PHP가있는 Oracle의 SELECTED 행 수를 계산합니다.
- 22. UIDatePicker가 MonoTouch와 작동하지 않습니다. "알 수없는 문자 :"오류가 발생합니다.
- 23. 디렉토리에서 주어진 확장자를 가진 파일의 수를 계산합니다 - C++?
- 24. Python : 알 수없는 변수의 수를 압축 해제 하시겠습니까?
- 25. 알 수없는 행 수를 사용하여 jxls 읽기가 우수합니다.
- 26. 알 수없는 매개 변수 수를 웹 서비스에 전달
- 27. 알 수없는 입력 필드 수를 ViewModel에 어떻게 바인딩합니까?
- 28. reportviewer를 사용하여 런타임에 알 수없는 이미지 수를 보고서에 삽입하십시오.
- 29. 수신 할 메시지의 수를 알 수없는 mpi의 상황을 처리하는 방법
- 30. 알 수없는 변수 수를 허용 할 수있는 MVC2 컨트롤러 메소드?
파일의 크기를 알고 싶습니까? 아니면 얼마나 많은 다른 문자가 파일에 있는지 알고 싶습니까? –
* 알 수 없음 *? 컴파일 타임에 알려지지 않은 것을 의미합니까? – Jacob
와이드 문자가 포함 되나요? – Tom