Как я могу извлечь путь к файлу из MultipartFile - PullRequest
1 голос
/ 30 апреля 2019

Я хочу извлечь путь к файлу, затем могу загрузить на Google Drive.Как я могу получить путь из MultipartFile ??

    //logger.info(""+uploadFile.getClass().getResource("").getFile().getPath());
    //System.out.println(uploadFile.getClass().getResource("").getPath());

также пытался преобразовать MultipartFile в файл, но не может "импортировать java.io.File" из-за "import com.google.api.services.drive.model.Файл;"не может быть совместимо с.Я думаю.уже используется drive.model.File.

@Override
public int uploadFile(HttpSession session, MultipartFile uploadFile) throws Exception {
    // TODO Auto-generated method stub
    File fileMetadata = new File();

    Drive driveService = getCredential(session);

    fileMetadata.setName(uploadFile.getOriginalFilename());
    logger.info(uploadFile.getResource().getFile().getAbsoluteFile().getPath());
    //logger.info(""+uploadFile.getClass().getResource("").getFile().getPath());
    //System.out.println(uploadFile.getClass().getResource("").getPath());

    java.io.File filePath = new java.io.File("need to input file path here");
    FileContent mediaContent = new FileContent("image/jpeg", filePath);
    File file = driveService.files().create(fileMetadata, mediaContent).setFields("id").execute();
    System.out.println("File ID: " + file.getId());

    return 0;
}

Servlet.service () для сервлета [appServlet] в контексте с путем [] вызвало исключение java.io.FileNotFoundException: ресурс MultipartFile [uploadFile] не может бытьразрешено в абсолютный путь к файлу

Я могу получить имя, размер из MultipartFile, который находится в параметре, поэтому он существует, но как я могу получить путь из него ??

1 Ответ

1 голос
/ 30 апреля 2019

Вам не нужен путь к файлу, чтобы загрузить файл в любое место. Вместо этого используйте multipartFile.getInputStream() или multipartFile.getBytes(). На самом деле в момент получения файла вы не можете знать путь к файлу (это не твердое правило, а скорее функция, зависящая от браузера)

...