추가 예정
예시 코드
// 헤더에 작성
// 헤더에 추가할 파일
CFileManager m_FileManager
// cpp 원하는 함수에 추가
CString strTime;
CStdioFile file;
CString strpath;
CString strFile;
CString strData;
// 로컬 타임 가져오기
SYSTEMTIME cur_time;
GetLocalTime(&cur_time);
strTime.Format(_T("%04d%02d%02d%02d%02d%02d%03ld"),
cur_time.wYear,
cur_time.wMonth,
cur_time.wDay,
cur_time.wHour,
cur_time.wMinute,
cur_time.wSecond,
cur_time.wMilliseconds);
// 시드 값 설정
std::srand(static_cast<unsigned int>(std::time(0)));
// 무작위 double 숫자 생성 (소수점 이하 3~4자리)
double num1 = (std::rand() % 1000) / 1000.0; // 0.000 ~ 0.999
double num2 = (std::rand() % 10000) / 10000.0; // 0.0000 ~ 0.9999
double num3 = (std::rand() % 1000 + 1000) / 1000.0; // 1.000 ~ 1.999
double num4 = (std::rand() % 10000 + 10000) / 10000.0; // 1.0000 ~ 1.9999
double num5 = (std::rand() % 10000 + 10000) / 10000.0; // 1.0000 ~ 1.9999
// 저장될 파일 경로 설정
strFile.Format(_T("C:\\TEST\\%s\\TEST.csv"), strTime);
// 경로에 폴더 생성
m_FileManager.XCreateDirectory(strFile);
// 저장할 데이터 임의 생성
strData.Format(_T("%.3lf, %.3lf, %.3lf, %.3lf, %.3lf"),
num1, num2, num3, num4, num5);
// 경로의 파일을 열려고 시도
// 열지 못하면
if (!file.Open(strFile, CFile::modeReadWrite | CFile::typeText))
{ // 파일을 열어 첫번째 줄에 쓰기
if (file.Open(strFile, CFile::modeCreate | CFile::modeReadWrite | CFile::typeText))
{
file.WriteString(strData);
file.Close();
}
}
//파일을 열면 마지막 줄에 데이터 작성하고 파일 닫기
else
{
file.SeekToEnd();
file.WriteString(strData);
file.Close();
}
'개발공부 > C++' 카테고리의 다른 글
[C++ MFC] DeleteFile로 파일 삭제, Deletefile로 삭제 안 될때 오류코드 (0) | 2024.09.10 |
---|---|
[C++ MFC] 창 최소화/최대화/작업표시줄로 내리기 (0) | 2024.08.05 |
[C++ MFC] Tray 기능 사용하기, 예제코드 (0) | 2024.05.28 |
[C++ MFC] 다이얼로그 배경색 변경 (0) | 2024.04.16 |
[C++] 템플릿 공부하기 (0) | 2024.04.09 |