파일이 디렉토리에 aa.txt됩니다 /home/user
내가 쓴 코드는fedora에서 netbeans 7.2를 사용하여 Java 프로젝트의 파일에서 입력을 읽는 방법?
input=new FileInputStream("//home//user//aa.txt");
을하지만 프로그램이 파일을 열 수 없습니다. 내가 창문에서 실행할 때, 작동한다. 페도라에서 프로그램에 의해 정확하게 읽혀지는 경로의 형식은 무엇입니까 ???
파일이 디렉토리에 aa.txt됩니다 /home/user
내가 쓴 코드는fedora에서 netbeans 7.2를 사용하여 Java 프로젝트의 파일에서 입력을 읽는 방법?
input=new FileInputStream("//home//user//aa.txt");
을하지만 프로그램이 파일을 열 수 없습니다. 내가 창문에서 실행할 때, 작동한다. 페도라에서 프로그램에 의해 정확하게 읽혀지는 경로의 형식은 무엇입니까 ???
는 이스케이프 문자로 사용됩니다 (예를 \n
= 새로운 라인 \t
= tab) \\
을 작성하여이 문자를 문자열에 배치 할 때 \
을 의미해야합니다.
이 문제는 슬래시가 포함되어 있지 않습니다. /
Linux 디렉토리의 경우 슬래시 /
이 사용됩니다. windows는 백 슬래시를 사용합니다. OS 독립적 코드를 작성하는 것은 어려울 수 있지만 문제는 아닙니다. 파일을 처리 할 때 슬래시를 사용하면 Java가 자동으로 올바른 OS 고유 형식으로 변환합니다.
예를 들어 C:/Users/Owner/Documents
은 windows에서 C:\Users\Owner\Documents
이됩니다. 또는 "C:\\Users\\Owner\\Documents"
으로 작성할 수 있지만 단순 슬래시 형식이 더 단순 해 보입니다.
/
(슬래시) 문자를 이스케이프 할 필요가 없습니다. 대신 File.separator
를 사용하는 것이 훨씬 현명하다, 그러나
input=new FileInputStream("/home/user/aa.txt");
:
그래서 당신은 기본적으로이 필요 \
이후
input=new FileInputStream(File.separator+"home"+File.separator+"user"+File.separator+"aa.txt");
슬래시 /home/user/aa.txt를 사용하여 해결되었습니다. –