我正在運行一個非常令人沮喪的錯誤,它應該是一個非常簡單的腳本(我知道java可能不會是最好的腳本,但我在這裏)。Java mkdir()不會爲一個字符串對象編寫目錄,而是用引號括起來的字符串
無論如何,我從csv文件中取出打印機的名稱,然後我試圖爲從該csv文件中取出的每臺打印機創建一個名爲的文件夾。問題是,如果我鍵入它這樣,我只能寫一個目錄打印機:
(new File("c:\\print\\printername").mkdir()
,但如果我這樣做:
String whatever = "c:\\print\\printername"
(new File(whatever)).mkdir()
沒有目錄將被創建。我對這個問題可能會感到困惑。我已經重組了我的代碼幾次,試圖追蹤這個問題,並試圖在mkdir()和mkdirs()之間切換,但仍然沒有任何結果。這裏是我的代碼
public static void main(String[] args) throws FileNotFoundException{
Scanner printers = new Scanner(new File("C:/Users/ransom/Desktop/printers.csv"));
printers.useDelimiter("\n");
String printerPath = "";
//new File("C:\\printer\\ISS114-Xerox4150PS").mkdir();
while(printers.hasNext()){
printerPath = "C:\\printer\\"+printers.next();
if(!(new File(printerPath)).mkdir()){
System.out.println(printerPath);
}
}
}
被註釋掉是當腳本工作的一個例子線,但如果它得到該行的循環不會創建一個目錄。有任何想法嗎?
Java 7:Files.createDirectories(dir,attrs)和Files.createDirectory(dir,attrs)。注意差異! –