2011-11-19 129 views
0

我試圖創建一個代碼,該代碼將從用戶獲取輸入並打印出文件路徑。我遇到了一個有趣的例子。但是我理解了一條線。構建路徑的java代碼

//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

java File類可以處理任何需要的東西。你究竟在做什麼?什麼是輸入?你在尋找什麼樣的輸出?


根據您的評論,如果您有名爲index.html工作路徑下的文件,那麼你可以:

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

有一個叫getCanonicalPath()文件類,它也可能是有用的另一種方法。

+0

我想要做的事情可以說我的客戶端發送index.html文件的get方法。我試圖查看該文件的絕對路徑。 – user1052462

+1

@ user1052462,如果你首先解釋你想要做的事情,你可能會得到更好的迴應。那麼你可能不會被拒絕... – Lucas

+0

@盧卡斯..感謝您的建議和幫助..下次我會牢記它。 – user1052462