[ONScripter] 나는 이렇게 컨버터를 제작했다. #003 펄을 이용하여 컨버터 제작 준비를 하자. 강의이야기 | Posted on 2011. 9. 6. 18:38
이 강의는 MPPC (미소녀 & PocketPC)의 Pure Ani에게 저작권이 있습니다.
일단 텍스트 편집기를 열어주세요.
그런 다음 아래의 내용을 적어넣습니다.
open (OUT,">1_kari.txt");
# 1_kari.txt 라는 파일을 OUT핸들의 제어로 작성합니다.
opendir (DIR,"./scenario");
# scenario 폴더를 DIR핸들로 열어줍니다.
@file1 = readdir(DIR);
# 배열변수 file1에 DIR핸들을 집어넣습니다.
closedir(DIR);
# DIR핸들을 닫습니다.
@file = grep(/\.ks/,@file1);
# 배열변수 file1의 내용중 확장자가 ks인것을 배열변수 file에 넣습니다.
# 확장자 .의 앞에 \가 존재하는 이유는, .이 이스케이프 문자이기 때문입니다.
foreach $file(@file){
# 배열변수 file을 변수 file에 순서대로 대입하여 끝날때까지 반복합니다.
open (IN, "./scenario/$file");
# scenario 폴더안의 파일중 현재 file변수가 가지고있는 파일의 명을 IN 핸들로 엽니다.
$file =~ s/\.ks//;
# 변수 file의 확장자 .ks를 삭제합니다.
print OUT "\*L_".$file;
# OUT핸들(1_kari.txt)에 "*L_현재 변수 file에 들어가있는 파일명"을 적습니다.
@line = <IN>;
# IN에 넣어진 내용을 배열변수 line에 넣습니다.
foreach $line(@line){
# 배열변수 line에 들어간 내용을 차례대로 변수 line에 넣어서 끝날떄까지 반복한다.
print OUT $line;
# OUT핸들(1_kari.txt)에 현재의 라인(줄)을 적습니다.
}
# 2번째의 foreach문(line)을 닫습니다.
close IN;
# IN핸들을 닫습니다.
}
# 1번째의 foreach문(file)을 닫습니다.
close OUT;
# OUT 핸들을 닫습니다.
※ 저의 기준으로 5라인의 @file = grep(/\.ks/,@file1);대신에 @file = ("ed.ks", "first.ks", "omake.ks");도 가능합니다.
위의 설명대로하면 대사파일과 똑같은 파일이 복사되거나 여러파일이 하나로 합쳐질것입니다.
작성자 Pure Ani
출 처 MPPC (미소녀 & PocketPC)
일단 텍스트 편집기를 열어주세요.
그런 다음 아래의 내용을 적어넣습니다.
open (OUT,">1_kari.txt");
# 1_kari.txt 라는 파일을 OUT핸들의 제어로 작성합니다.
opendir (DIR,"./scenario");
# scenario 폴더를 DIR핸들로 열어줍니다.
@file1 = readdir(DIR);
# 배열변수 file1에 DIR핸들을 집어넣습니다.
closedir(DIR);
# DIR핸들을 닫습니다.
@file = grep(/\.ks/,@file1);
# 배열변수 file1의 내용중 확장자가 ks인것을 배열변수 file에 넣습니다.
# 확장자 .의 앞에 \가 존재하는 이유는, .이 이스케이프 문자이기 때문입니다.
foreach $file(@file){
# 배열변수 file을 변수 file에 순서대로 대입하여 끝날때까지 반복합니다.
open (IN, "./scenario/$file");
# scenario 폴더안의 파일중 현재 file변수가 가지고있는 파일의 명을 IN 핸들로 엽니다.
$file =~ s/\.ks//;
# 변수 file의 확장자 .ks를 삭제합니다.
print OUT "\*L_".$file;
# OUT핸들(1_kari.txt)에 "*L_현재 변수 file에 들어가있는 파일명"을 적습니다.
@line = <IN>;
# IN에 넣어진 내용을 배열변수 line에 넣습니다.
foreach $line(@line){
# 배열변수 line에 들어간 내용을 차례대로 변수 line에 넣어서 끝날떄까지 반복한다.
print OUT $line;
# OUT핸들(1_kari.txt)에 현재의 라인(줄)을 적습니다.
}
# 2번째의 foreach문(line)을 닫습니다.
close IN;
# IN핸들을 닫습니다.
}
# 1번째의 foreach문(file)을 닫습니다.
close OUT;
# OUT 핸들을 닫습니다.
※ 저의 기준으로 5라인의 @file = grep(/\.ks/,@file1);대신에 @file = ("ed.ks", "first.ks", "omake.ks");도 가능합니다.
위의 설명대로하면 대사파일과 똑같은 파일이 복사되거나 여러파일이 하나로 합쳐질것입니다.
작성자 Pure Ani
출 처 MPPC (미소녀 & PocketPC)