C++에서 텍스트 파일 읽기 및 쓰기

이 튜토리얼에서는 C++에서 텍스트 파일을 읽고 쓰는 방법을 배웁니다. 두 경우 모두 읽기/쓰기 데이터 스트림을 선언한 후 파일이 존재하는지 항상 확인하십시오.

ifstream myFlux (< / span>"C:/test.txt");
if(myFlow){
   ...
}
else{
    파일이 존재하지 않음을 나타내는 메시지
}

C++로 파일에 쓰기

쓰기는 스트림을 생성하여 수행됩니다 ofstream. 이 흐름이 중요한 역할을 합니다. 중개자 사이  컴파일러 및 파일. 명령문FlowName입니다< < " "뭔가를 쓰다" < < 끝; "뭔가를 쓰십시오" 파일의 test.txt입니다. endl은 줄 바꿈을 만듭니다.

#include < iostream입니다> < / o : p>< / span >< / span >< / div >
#include < fstream입니다> < / o : p>< / span >< / span >< / div >
#include < string입니다> < / o : p>< / span >< / span >< / div >
#include < 스트림>
네임스페이스 std 사용;

무효 쓰기 (int t []) < / o : p>< / span >< / span >< / div>
{
        string const filename("C:/test.txt"); < / o : p>< / span >< / span >< / div >
        스트림 myStream(nomFichier.c_str()); < / o : p>< / span >< / span >< / div >
        if(myFlow)
        {
                              문자열 문자열; < / o : p>< / span >< / span >< / div >
                              for(int i = 0 ; i < 10 ; i++)
                    문자열 += convertInt(T[i])+" "; < / o : p>< / span >< / span >< / div >
                              myFeed < < 체인 < < 끝; < / o : p>< / span >< / span >< / div >
        }
        else
              비용 < < "파일을 열 수 없습니다." < < 끝;       < / o : p>< / span >< / span >< / div >
}

//정수를 문자열로 변환
문자열  convertInt(int  number)
{
    문자열스트림 ss; SS < < 수; 반환  ss.str()을 호출합니다. < / o : p>< / span >< / span >< / div >
}

//유어 번호 생성
int rand (int nb) < / o : p >< / span >< / span >< / div>
{
      반환 rand()%nb; < / o : p>< / span >< / span >< / div >
}

int main()
{
      int T1[10]={1,2,3,4,5,6,7,8,9,10}; < / o : p>< / span >< / span >< / div >
      쓰기(T1); < / o : p>< / span >< / span >< / div >
      재생();
      srand(시간(NULL)); < / o : p>< / span >< / span >< / div >
      for(int i=0; i< 5; i++)
                      printf("%d  \n",rand(50)); < / o : p>< / span >< / span >< / div >
      system("일시 중지");
}

C++로 파일 읽기

C ++에서는 세 가지 방법으로 읽을 수 있습니다 :
  1. Line-by-line: 재생 커서는 전체 줄을 읽고 getline 메서드( ifstream stream, string line).
  2. 단어별: myFlow 문 사용 > > 단어; 단어는 끈 팬티입니다. 단어는 공백으로 구분됩니다.
  3. 문자별 : get(char c).
예:
공허  독서 () < / o : p>< / span >< / span >< / div >
{
        ifstream myFlux("C:/test.txt"); < / o : p>< / span >< / span >< / div >
          if(myFlow)
        {
                              문자열 라인;
                              printf("한 줄씩\n"); < / o : p>< / span >< / span >< / div >
                                while(getline(myFlow,line))
                                            비용< < 선< < 끝;
                              printf("단어 단위\n"); < / o : p>< / span >< / span >< / div >
                                myFlow.clear()를 호출합니다.
                슬라이더 0 초기화
                              myFlux.seekg (0, ios::beg); < / o : p>< / span >< / span >< / div >
                                문자열 단어; < / o : p>< / span >< / span >< / div >
                                while(myFlow> > 단어)
                                            비용< < 모트< < 끝;
                              printf("문자별\n");
                                myFlow.clear()를 호출합니다. < / o : p>< / span >< / span >< / div >
                              myFlux.seekg (0, ios::beg); < / o : p>< / span >< / span >< / div >
                                전차 c;
                                while(myFlux.get(c))
                                {
                                          비용< < 다< < 끝;
                                          int  position=myFlow.tellg()를 호출합니다.                 < / o : p>< / span >< / span >< / div >
                              }
        }
          else
                비용< < "파일을 열 수 없습니다."  < < 끝; < / o : p>< / span >< / span >< / div >
}