1 回答

TA貢獻1909條經(jīng)驗 獲得超7個贊
我認(rèn)為拋出異常是因為目錄/opt/13不存在。Files.write將創(chuàng)建文件,但沒有父目錄。這是Files.write文檔的一部分:
options 參數(shù)指定文件的創(chuàng)建或打開方式。如果不存在任何選項,則此方法的工作方式就像存在 CREATE、TRUNCATE_EXISTING 和 WRITE 選項一樣。換句話說,它打開文件進行寫入,如果文件不存在則創(chuàng)建文件,或者最初將現(xiàn)有的常規(guī)文件截斷為 0 大小。
替換以下行
File newFile = new File(UPLOADED_FOLDER + merchant_id, file.getOriginalFilename());
LOG.info("New file location: " + newFile.getAbsolutePath()); //Log the path
Files.write(newFile.toPath(), bytes);
和
File directory = new File(UPLOADED_FOLDER, merchant_id.toString());
directory.mkdirs();
File newFile = new File(directory, file.getOriginalFilename());
LOG.info("New file location: " + newFile.getAbsolutePath()); //Log the path
Files.write(newFile.toPath(), bytes);
添加回答
舉報