특정 폴더 안에 있는 텍스트 파일들을 읽어와서 내용을 정리하는 자동화 스크립트를 작성하고 있습니다.
코드:
import java.io.File;
import java.util.Scanner;
public class FileReadTest {
public static void main(String[] args) {
try {
File file = new File("C:\test\data.txt");
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
오류: java.io.FileNotFoundException: C:\test\data.txt (The system cannot find the path specified)
시도: 파일 경로가 정확한지 확인했고, 관리자 권한으로 프로그램을 실행해 보았으나 동일한 에러가 발생합니다.
질문: 코드 상의 경로 문자열에 포함된 백슬래시를 자바가 어떻게 인식하고 있는지, 그리고 이를 올바르게 수정하려면 어떻게 해야 하나요?
댓글6
-
빗방울
2026.10.31 01:38
-
빗방울
2026.10.31 02:23
맞음ㅋㅋ
이거 이스케이프 문자 때문에 그런 거라
두 번 써야 제대로 인식함
-
빗방울
2026.10.31 03:51
ㄹㅇㅋㅋ 이거 처음에 다들 여기서 막히더라ㅋㅋ
-
빗방울
2026.10.31 01:50
아니면 그냥 슬래시(/) 써보세요
자바는 윈도우에서도 / 인식해서 그게 훨씬 편함ㅋㅋ
-
빗방울
2026.10.31 04:34
아예 File.separator 써서 경로 짜면 OS 상관없이 돌아가서 더 깔끔할듯함ㅋㅋ 이거 습관 들여놓으셈
-
빗방울
2026.10.31 04:36
아니면 그냥 절대경로 쓰지 말고 상대경로로 잡아보셈ㅋㅋ
그게 나중에 파일 옮길 때도 안 꼬이고 편함ㄷㄷ
모든 이야기1455
가벼운 안부부터 깊은 생각까지, 함께 나눠요.
총 1455개의 이야기
이거 백슬래시 두 번 써야 됨ㅋㅋ
\\ 이렇게 바꿔보셈 바로 될듯함