[C++] C++ 스타일 파일입출력2022. 11. 12. 20:09
fin 은 자동 개행을 한다
read / wirte 는 개행을 하지 않는다
C++ 스타일 파일 입출력을 사용하려면 아래 헤더파일을 추가해야한다
<fstream>
1. 파일에 쓰기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#include <fstream>
using namespace std;
class CPlayer
{
public:
void
private:
char* m_pName;
int m_iHp;
}
void SaveData()
{
ofstream fout;
// 파일 열기
// std::ios_base::binary : 바이너리 모드
fout.open("PlayerData.txt", std::ios_base::binary);
// 1. char 배열 저장
// 파일에 쓰기
int _arrLen = strlen(m_pName);
fout.write(m_pName, sizeof(char) * _arrLen);
// 2. 정수 저장 : 일반 원시 변수
// 파일에 쓰기
fout.write((char*)&m_iHp, sizeof(int));
// 파일 닫기
fout.close();
}
|
cs |
2. 파일 읽기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#include <fstream>
using namespace std;
class CPlayer
{
public:
void Set_Info(/*매개변수들*/);
private:
char* m_pName;
int m_iHp;
}
void LoadData()
{
ifstream fin;
// 파일 열기
// std::ios_base::binary : 바이너리 모드
fin.open("PlayerData.txt",std::ios_base::binary);
// 파일이 정상적으로 열렸는가
if (fin.is_open() == true)
{
char _arr[30] = "";
int _hp = 0;
// 파일 읽기 : 1. char 배열
fin.read(_arr, sizeof(_arr));
// 파일 읽기 : 2. 일반 원시 변수
fin.read((char*)&m_iHp, sizeof(int));
// 데이터 셋팅
Set_Info(_arr, _hp);
// 파일 닫기
fin.close();
}
}
|
cs |
출처 :
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=kks227&logNo=220227175866
'Language > C++' 카테고리의 다른 글
[펌] 생성자 소멸자 관련 (0) | 2023.08.19 |
---|---|
[BT] 요약 (0) | 2023.08.18 |
[C] C 스타일 파일입출력 (0) | 2022.11.12 |
[C] 문자열 상수 (0) | 2022.10.23 |
[C++] 코드 위치나 정보를 받아오는 매크로 들 (0) | 2022.05.08 |