C++에서 파일의 문자열 검색

C 언어에서 문자열은 char 문자 배열에 저장되고 char 유형은 문자를 저장할 수 있습니다 (우리는 한 글자 만 말하고 더 이상 말하지 않음). 또한 -128에서 127 사이의 숫자를 저장할 수 있습니다.
컴퓨터는 숫자만 이해하기 때문에 문자는 숫자로 변환됩니다. 따라서 각 문자는 숫자와 연결됩니다. C 언어는 이 작업을 매우 빠르게 수행합니다. 예:

문자 'a'는 ASCII 코드에서 숫자 97에 해당합니다. 확인하려면 alt+97.

    char 문자 = '에서 ';
    printf("%c\n", 문자);

페이지  채널  는 char:
      char  문자열[]="저는 프로그래머입니다";

우리의 목표는 텍스트 파일을 읽고 텍스트 파일을 사용할 수 있는지 확인하는 것입니다. 문자열이 이 파일에 있습니다.  에 파일이 있습니다. 예배 규칙서  "C:/test.txt",  c 파일에는 텍스트가 포함되어 있습니다(예: 간단한 문장:my name is X and I'm a programmer.

C에서,  char  채널[]  다음과 같이 표시됩니다.


j
e
s
u
i
s
u
n
p
r
o
g
r
a
m
m
e
u
r
'\0'

' \0 '은 배열의 끝을 나타냅니다.


#include < iostream입니다> 
#include < fstream입니다>
#include < string입니다>
#include < 스트림>
using 네임스페이스 std;

void searchInFile(char string[])
{
ifstream myStream("C:/test.txt");
if(myFlow)
{
int i=0,position=0;
//문자별로 읽는다
myFlux.clear();
//0 //ios::beg: start 부터 시작
myFlux.seekg(0, ios::beg);
char c;
//파일의 끝이 아닌 한 //
while(myStream.get(c))
{
//재생 헤드의 위치를 증가시킵니다
position++;
//문자가
//i //다음 문자로 이동합니다
if(c==string[i]){
i++;
//문자열의 모든 문자가 다음과 같으면
//checked 하면 문자열을 찾았습니다
//파일
if(i==strlen(string)) //strlen: 문자열의 길이를 반환합니다
printf("검색된 문자열은 %d "
" 위치에 있고 %d 위치에서 끝납니다.\n, position-strlen (문자열), 위치);
}
//그렇지 않으면 단일 문자를 찾으면
//일치하지 않습니다
//0 else
i=0;
}
}
else
printf("파일을 열 수 없습니다.\n");
}

int main()
{
char string[]="프로그래머";
searchFile(문자열);
시스템("일시 중지");
}