-
파일 입출력 관련@ 16. 1 ~ 17. 1/C++ 2013. 1. 13. 17:28
파일형태에는
텍스트 파일과 이진형태 파일이 있는데..
공통점은 0, 1이라는 데이터를 쓴다는것..
차이점은..
텍스트 파일은 그것들을 1바이트 단위로 읽고
이진형태는 사용자가 지정한 단위로 읽어들인다.
ifstream myfile()
ifstream *myfile;
myfile->open()
<파일출력>
- 파일에 쓴다
binary 파일로 데이터를 저장할때..
ofstream myfile;
myfile.write(첫번째 시작주소 인자, 최종크기);
첫번째 시작주소 인자는 char *형으로 형변환을 해줘야한다.
basic_ostream<_Elem, _Tr>& write(const char_type *_Str,streamsize _Count);
<파일읽기>
- 파일에 써있는것을 읽어온다
연산자는 읽을 때 공백을 기준으로 데이터를 구분하여 읽어 들이며 문자열에서는 공백을
제외한 문자만 읽어 들인다.
get()는 문자열을 읽어 들이는 함수로 공백문자까지 포함하여 읽어 들인다.
read()는 바이너리형으로 저장되었을 때 사용한다.struct DATE
{
int nYear;
int nMonth;
int nDay;
};
int _tmain(int argc, _TCHAR* argv[])
{
DATE sDate; //담고자하는 무언가가 필요하여 선언..
ifstream MyFile;
MyFile.open("test.txt", ios::in|ios::binary);
MyFile.read( (char*)&sDate, sizeof(DATE));
cout << sDate.nYear << " " << sDate.nMonth << " " << sDate.nDay << endl;
MyFile.close();
return 0;
}<파일 탐색>
파일 탐색은 파일 포인터를 임의의 위치로 이동시켜 내용을 읽거나 쓸 수 있게 한다.ios::beg 파일의 시작
ios::cur 파일의 현재 위치
ios::end 파일의 끝파일 포인터는 바이트 단위로 이동하므로
seekg(4, ios::beg);시작위치로 가서 4바이트 뒤에서 부터..뭔가를 하기위함..
'@ 16. 1 ~ 17. 1 > C++' 카테고리의 다른 글
Template (1) 함수 템플릿 (0) 2013.01.29 비트연산자, 함수포인터, ctime (0) 2013.01.27 잊기전 정리.. (1) 2013.01.17 복사생성자의 호출시점 (0) 2013.01.01 const 이야기 1부 (0) 2012.12.26