안녕하세요.
애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다.
지난번에 이어서 맥스 스크립트에서 Text파일을 입출력하는 방법에 대해서 이야기하겠습니다.
지난번의 내용이 파일의 생성과 저장이었다면, 오늘의 내용은 읽기입니다.
읽기 위해 파일을 여는 것은 이전에 배운 openFile함수를 사용하면 됩니다.
그렇다면 열고 나서 열린 파일을 읽는 방법에 대해서 알아야겠죠.
readLine <filestream>은 1줄 단위로 파일의 내용을 읽습니다. 읽은 내용은 문자열로 취급합니다.
readChar <filestream>는 1 글자씩 파일의 내용을 읽습니다. 읽은 내용은 문자열로 취급합니다.
readChars <filestream> <char_count>는 <char_count>에 쓰인 수만큼 읽어 옵니다. 읽은 내용은 문자열로 취급합니다.
readDelimitedString <filestream> <string>은 <string>에 지정한 문자 전 까지만 읽어 들입니다. 읽은 내용은 문자열로 취급합니다.
skipToString <filestream> <string>은 <string>에 지정한 문자까지 무시하고 읽는 칸을 이동합니다.
skipToNextLine <filestream>은 다음 한 줄을 생략 합니다. 스킵한 줄의 마지막 칸에 읽는 부분이 위치합니다.(즉 엔터와 같이 다음 줄로 내려가지는 않습니다.)
filePos <filestream>는 파일을 현재 어디까지 읽었는지를 수로 표현합니다.
seek <filestream> <integer>은 파일의 읽을 부분을 글자 기준으로 입력한 숫자 위치로 이동합니다.
eof <filestream>는 파일의 내용을 끝까지 읽으면 true, 그렇지 않으면 false를 반환합니다.
이외에도 읽은 내용을 메모리에서 비우는 함수 등이 있지만 저도 자세히는 모르기 때문에 설명을 생략합니다.
궁금하신 분은 맥스 스크립트 핼퍼에서 FileStream를 검색하세요.
자 여러 가지를 배웠으니 어떻게 써먹는지 알아봐야겠죠.
우선은 지난 시간에 만든 파일을 약간 수정합니다.
이렇게 읽을 파일을 수정하고 다음과 같이 입력하고 한 줄씩 실행해 봅시다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
file = "D:\\test\\test.mfl"
open_text = openfile file
a = readLine open_text
skipToNextLine open_text
b = readChars open_text 3
c = filePos open_text
seek open_text 1
d = readChars open_text 3
f = readChar open_text
g = readDelimitedString open_text "p"
skipToString open_text "기"
h = readChars open_text 3
close open_text
|
cs |
1번 라인은 D드라이브의 test폴더의 test.mfl파일의 Pathd와 Name을 file변수에 저장합니다.
2번 라인은 1번 라인에서 입력한 파일을 사용하기 위해 열은 다음에 파일의 내용을 open_text변수에 저장합니다.
3번 라인은 readLine을 이용해서 파일의 내용(open_text)중 처음 한 줄을 읽어 a변수에 저장합니다.
4번 라인은 skipToNextLine open_text을 사용하여 두 번째 줄인 '2번째 줄은 Skip로 넘길겁니다.'을 읽지 않고 넘어갑니다.
읽는 칸은 다음 줄인 3번째 줄이 아니고 2번째 줄의 마침표 다음에 위치합니다.(엔터와 같은 효과는 없습니다.)
5번 라인은 2번째 줄 마침표 다음부터 세 글자를 읽어 옵니다.
출력된 내용이 이상해 보이지만, 이것은 다음 줄로 이동하는 것도 한 칸으로 치기 때문입니다.
6번 라인은 현재 읽는 칸이 몇 번째 칸인지를 표시합니다.
7번 라인은 파일의 내용의 첫 번째 칸으로 이동시킵니다. (처음으로 돌아갑니다.)
8번 라인은 다시 읽는 칸으로부터 세 칸을 읽어 옵니다.
9번 라인은 한 칸만 읽습니다.
10번 라인은 'p'라는 문자를 찾아 그 전까지만 읽습니다.
11번 라인은 '기'라는 문자까지 읽지 않고 지나갑니다.
12번 라인은 다시 읽는 칸으로부터 세 칸을 읽어 옵니다.
13번 라인은 열린 파일을 닫습니다.
아래의 이미지와 대조해 보며 생각하시면 이해가 잘 되실 겁니다.
이해가 잘 가시나요? ㅎㅎ
오늘은 Text파일의 읽기에 대해서 이야기를 했습니다.
읽은 내용을 잘 사용하기 위해서는 맥스의 문자열과 관련된 명령들을 알아야 합니다.
다음 시간에는 맥스 스크립트 기초 게시판에서 문자열에 대해 알아보도록 하겠습니다.
'맥스스크립트 기본' 카테고리의 다른 글
Controller Key Functions(4) (0) | 2019.11.05 |
---|---|
Controller Key Functions(3) (0) | 2019.11.04 |
Controller Key Functions(2) (2) | 2019.11.01 |
Controller Key Functions(1) (0) | 2019.10.31 |
파일 열기와 저장(7) FileStream(1) (0) | 2019.08.29 |
파일 열기와 저장(6) FBX Export 옵션 (2) | 2019.08.28 |
파일 열기와 저장(6) Export, Import (0) | 2019.08.27 |
파일 열기와 저장(5) 다이얼로그로 폴더 지정 (0) | 2019.08.26 |