Rumah  >  Soal Jawab  >  teks badan

java - 关于excel上传解析

前台通过form表单上传文件,后台通过request.getInputStream得到流,但是POI建立wordbook要求是fileInputStream,我获取的是servletInputStream,强转会出错。怎么解决。我查的资料都是通过固定文件位置读取流,我想使用用户上传的流来生成workbook该怎么做?

PHP中文网PHP中文网2741 hari yang lalu432

membalas semua(4)saya akan balas

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:29:52

    Cuba contoh di laman web rasmi.

    balas
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:29:52

    1. Terdapat penyelesaian untuk menyimpannya ke lokasi tertentu pada pelayan dan kemudian membacanya Anda perlu memberi perhatian kepada nama fail yang unik dan memadamnya selepas memproses
    2 boleh mendapatkan fail yang merupakan objek Fail saya terlupa bagaimana untuk melakukannya

    balas
    0
  • 怪我咯

    怪我咯2017-04-18 10:29:52

    POI versi apa? Dalam kaedah pembinaan XSSFWorkbook, satu parameter jelas sekali ialah InputStream

    balas
    0
  • 怪我咯

    怪我咯2017-04-18 10:29:52

    ServletInputStream memanjangkan InputStream sudah tentu tidak boleh ditukar secara paksa Anda boleh membaca ServletInputStream daripada penimbal dan kemudian menukarnya kepada InputStream (jika anda tidak diganggu Jika ia tidak berjalan lancar, anda boleh memadamkannya)
    Anda boleh cuba menggunakan springmvc,
    1.@RequestParam(value="file",required = false)Fail MultipartFile //Terima parameter
    2 . Tetapi masih Untuk membina laluan menyimpan fail

    String path = request.getSession(true).getServletContext().getRealPath("/upload");
     String fileName = new Date().getTime()+file.getOriginalFilename();

    3. Simpan fail

    File targetFile = new File(path,fileName);
    file.transferTo(targetFile)

    4.POI...

    balas
    0
  • Batalbalas