11. ScriptReader/FileManager/
FileManager
ReadFile 기능을 구현하였다.
만든 함수들
함수 설명
ReadFile
파일 내용을 읽는 함수이다.
1. CatPath (): _ePath 로 들어온 type에 따른 Path 정보와 _tcPath 정보를 이어붙인다.(읽고자하는 파일 주소.)
2. 파일의 내용을 한글자씩 읽으며 '\n' 만나면 거기까지가 1 SET의 문자열로 취급한다.
즉, 1줄당 1개의 문자열로 저장한다.
3. 읽은 문자열(m_lineData)과 줄 갯수 (m_col) 들을 모은 FILEDATA* 를 리턴한다.
동적 할당된 line 정보들은 언제 delete 해줄까?
FreeFileDetail() 호출 시 해제된다.
ReadHeaderFileNameList
ReadFile() 과 동작은 유사하지만 .h 파일의 이름만 추출하는 함수이다.
WriteFile
stream에 저장한 파일 내용을 원하는 경로에 출력한다.
FreeFileDetail
전달된 FILEDATA* 의 동적할당 정보들을 해제한다.
1. ** 에 대한 해제.
2.FILEDATA* 에 대한 해제.
GetPath
프로젝트 자체에 미리 설정된 path (FileManager 생성자에서 지정됨.) 중 type에 맞는 Path 를 리턴한다.
SetPath
out 인자에 path 정보를 저장한다. (초반에 만들었던 거라 이제는 필요없을듯 내일 지우자.)
CatPath
type에 맞는 path 와 전달된 _path 를 이어붙여서 리턴한다.
ScriptReader
1.ExcludeList.txt 를 읽어온다.
2.Project\\Script 경로의 모든 파일 이름을 읽어온다.
3.ScriptList.txt 를 읽어온다.
4. ExcludeList를 제외한 파일 이름들과 ScriptList.txt에 기록된 이름을 비교한다.
4-1. 변한게 없다면 그대로 return 0;
4-2. 변한게 있다면 5번으로.
5. ScriptList.txt FileName들을 file에 기록한다.
6. ScriptManager.h 를 작성하여 file에 기록한다.
7.ScriptManager.cpp 를 작성하여 file에 기록한다.
아래 사용 이미지에서는 6번까지만 구현됐다.
아직 7번은 안함.
사용 Code
결과
ScriptReader 프로젝트 실행 시 아래의 파일들이 생성 or 수정 된다.
그 외의 내용
실수한 부분이나 궁금해서 실험해본 내용을 정리했다.
https://rokaisback.tistory.com/45