2011-11-19 3 views
0

사용자로부터 입력을 받아 파일 경로를 인쇄하는 코드를 만들려고했습니다. 흥미로운 예를 발견했습니다. 그러나 나는 선을 이해해야 만했다.경로를 작성하는 자바 코드

//gets input from the user 
BufferedReader input = new BufferedReader(newInputStreamReader(s.getInputStream())); 
String request = input.readLine(); 
String path = new String(); 

int start = 0; 
int end = 0; 

for (int a = 0; a < request.length(); a++) { 
    if (request.charAt(a) == ' ' && start != 0) { 
     end = a; 
     break; 
    } 
    if (request.charAt(a) == ' ' && start == 0) { 
     start = a; 
    } 
} 

path = request.substring(start + 2, end); 

끝에 2가 추가되는 이유는 무엇입니까?

+0

아마 하드 드라이브 문자가 자릅니다. - "C :" – stdcall

+1

분명히 입력에 공백이있을 경우 첫 번째 공백 다음 두 문자까지 사용자 입력을 원하지 않습니다. –

답변

1

자바 File 클래스는 필요한 모든 것을 수행합니다. 당신은 실제로 무엇을하려고합니까? 입력은 무엇입니까? 어떤 종류의 결과물을 찾고 계십니까? 귀하의 코멘트 당


, 당신은 index.html라는 작업 경로에 파일이있는 경우에, 당신 수 : 유용 할 수 있습니다 getCanonicalPath()라는 파일 클래스의 다른 방법이있다

File file = new File("./index.html"); 
System.out.println(file.getAbsolutePath()); 

.

+0

내가 뭘하려고하는지 내가 클라이언트가 index.html 파일에 대한 get 메서드를 보냅니다 말할 수 있습니다. 그 파일의 절대 경로를 보려고합니다. – user1052462

+1

@ user1052462, 처음에 무엇을 하려는지 설명하면 더 나은 응답을 얻을 수 있습니다. 그렇다면 당신은 아마도 투표를하지 않았을 것입니다 ... – Lucas

+0

@ Lucas .. 당신의 충고와 도움에 고마워요. 다음 번에는 그것을 지킬 것입니다. – user1052462

관련 문제