프날 오토핫키 강좌  v2

⚠ 이 강좌는 오토핫키 v2를 다룹니다

지금 보시는 강좌는 과거 오랜 시간동안 알려진 오토핫키(v1.1)의 차세대 버전인 오토핫키 v2를 다루고 있습니다.
만약 구버전인 '오토핫키 v1.1'의 강좌를 찾으신다면 프날 오토핫키 강좌(https://pnal.kr)를 봐주시면 되지만, 새로 오토핫키를 배우신다면 v2 버전을 배우시는 것을 강력히 추천드립니다.

94. 파일이 존재하는지 확인하고 읽기


이제 오토핫키에서 파일과 관련된 함수를 쭉 배울 것입니다. 어렵지 않아요!

FileExist

창이 존재하는지 확인하는 WinExist 함수와 마찬가지로, 파일이 존재하는지 확인하는 함수는 FileExist입니다.

FileExist(FilePattern)
FileExist 함수의 원형

FilePattern 매개변수는 지난 강에 배웠던 대로, 찾고자 하는 파일의 경로를 그대로 입력해주면 됩니다. 현재 경로에 A.txt가 있는지 확인하려면 A.txt 그대로 적으면 되고, C 드라이브 최상단에 MyPhoto.png가 있는지 확인하려면 C:\MyPhoto.png를 입력하면 되죠.

이 함수는 파일이 존재하면 그 파일의 속성을 반환합니다. 파일의 속성 개념은 이곳에서 언급한 적 없으니, 일단 '무언가' 반환한다고 알고있으면 됩니다.

오토핫키에선 0과 빈 값이 아니면 모두 참(true, 1)이기 때문에, 이를 조건문에 활용할 수 있겠군요!

FileRead

FileRead 함수를 이용하여 텍스트 파일의 내용을 읽을 수 있습니다.

FileRead(FilePattern [, Options)
FileRead 함수의 원형

FilePattern 매개변수는 역시 읽어올 텍스트 파일의 경로이고, Options는 여러 옵션을 제공해줄 수 있지만 강좌에선 따로 언급하지 않겠습니다.

Tip: 파일 내용을 읽을 땐 파일의 존재 여부를 확인해야 합니다!

없는 파일을 읽으려고 FileRead를 사용하면 오류가 발생하겠죠? 따라서, FileReadFileExist를 사용한 뒤 '만약 파일이 존재한다면'이라는 조건문 안에 감싸는 형태로 사용하는 것이 바람직합니다. 하단의 예제를 참고해주세요.

실습

1. 바탕화면의 1.txt 읽기

1if (FileExist(A_Desktop "\1.txt"))
2{
3    MsgBox(FileRead(A_Desktop "\1.txt"))
4}
예제 1. 바탕화면의 1.txt 읽기

바탕화면의 1.txt를 읽어서 출력하는 코드입니다. 위의 Tip에서 말씀드렸듯, FileExist를 이용하여 파일이 존재하는지 확인 후, 존재한다면 파일을 읽음으로써 오류를 방지한 것을 볼 수 있습니다.

어렵지 않죠? 파일 패턴에 관한 이해만 있다면 문제 없을 것입니다.

질문하러 가기