javaexcel文件上传|java中怎么把文件上传到服务器的指定路径

javaexcel文件上传|java中怎么把文件上传到服务器的指定路径的第1张示图

① java怎么读取上传的excel文件

java怎么读取上传的excel文件,解决办法:

添加jar文件,java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。

jxl对Excel表格的认识,每个单元格的位置认为是由一个二维坐标(i,j)给定,其中i表示列,j表示行,并且从上到下递增,从左到右递增。

对于合并单元格的以最左,最上的单元格的坐标为准。如下图中t.xls,一班名单(0,0),陈茵(1,2),陈开先(1,6)。

② java上传Excel文件,如何实现进度条显示

您好,1、开发简单,由于要定时起一个HTTP 连接去获得进度信息,因此,发生的连接请求也增多 ,另外,在低速的情况下,常常会出各种各样的BUG,网络环境的差异,还造成那个周期很 难选择。 2、开发较复杂,COMET 本身需要服务器的支持,这样TOMCAT 至少得选6.0,否则服务器长连 接,压力肯定受不了,但是,性能相对好一些,由于一次上传实际上只启动了两个HTTP 链接 请求,比起AJAX 来说,那是要少很多请求了。另外一个优点是,COMET 将使得服务器可以主 动将进度情况汇报给客户端,因此,客户端的进度条相对来说,要准确一点。 3、目前看来解决方案最好的一个了,虽然开发需要涉及到 FLASH、JAVASCRIPT、以及 JAVA 的 开发,但是代码量都不是很多,因此,复杂程度相对属于中等程度。但是FLASH 也有几个问 题:第一、浏览器 FLASH 版本兼容问题,第二、FLASH 是通过获得发送数据的进度来体现进度 条的,因此虽然不需要服务器端开发进度部分的代码,但是进度的展现有些不是很准确,经 常会有一开始速度很快,但是后面越来越慢的情况。 4、就不说了,开发肯定是最麻烦的,但是进度条效果肯定是最好的,但要给每种浏览器都 要搞个插件,还是比较痛苦的。 总结一下,希望对大家有帮助。 2 其实很麻烦的,之前试过,会有下面几个问题: 第一、服务器端一定要选择支持HTTP 长连接的服务器,否则操作系统的线程限制,会导致并 发降低。 第二、除非原来就采用的是COMET 的进度方式,否则,你要把周期获得进度的方式,改成 COMET 的方式,那很郁闷的,COMET 要服务器主动把进度信息用JAVASCRIPT 的方式发回客户端 ,所以需要把结构转化为JAVASCRIPT 调用才行。 第三、对于不同的浏览器,处理 JAVASCRIPT 的方式是不一样的,我试验的结果是,IE 会在收 到一定数量的JAVASCRIPT 之后才执行,所以虽然我在服务器端每次都调用了flush 方法,但 是界面上还是需要等一段时间才能响应。而这段时间又不好控制了,因为上传文件大小的不 一样,导致了下发的JAVASCRIPT 数量也不一样,所以基本很难达到FLASH 那样的效果。 其实如果已经决定采用flash 了,那就不需要再去修改服务器端的代码了,因为那个进度信 息服务器发不发都不会影响到代码的执行,反正FLASH 本身已经提供了进度指示了,所以, 说简单地,要改成FLASH 上传,你直接做个FLASH 客户端就好了,不需要再改服务器端了。 对了,还有一种情况需要改服务器端,那就是FLASH 上传多个文件是采用多线程上传的,因 此如果你一次上传多个文件,那就需要改服务器端了。需要在所有线程上传完成的情况下, 再去修改数据库。

③ JAVA Excel文件上传,上传后的Excel文件打开时报有不可读取的内容,怎么回事

这样接收,当然不行了,,,,,,使用smartupload等接收上传,或Struts接收上传的文件文件上传,要浏览器端编码的 <form action="UploadServlet" method="post" enctype="multipart/form-data">

④ 在java中如何使用poi 将格式不规范的EXCEL文件上传,注意是格式不规范的

格式不规范?用poi读取单元格的内容,一般都是先让用户下载模版,这个excel模版是特定的,里面做了数据限制,比如日期的格式、数值的范围,格式不规范的是不允许的。这是第一个工作。第二个工作是导入时候的验证,比如第一行的第三列是2011年1月1日至2012年1月1日之间的日期,格式是yyyy-mm-dd,如果格式不对,程序终止,提示用户X行、Y列数值格式不对。只有这两个工作都做了才算完整不知道有没有回答你的问题。还是说你想问具体使用poi读取excel的代码?

⑤ java中怎么把文件上传到服务器的指定路径

文件从本地到服务器的功能,其实是为了解决目前浏览器不支持获取本地文件全路径。不得已而想到上传到服务器的固定目录,从而方便项目获取文件,进而使程序支持EXCEL批量导入数据。

java中文件上传到服务器的指定路径的代码:

在前台界面中输入:

<form method="post" enctype="multipart/form-data" action="../manage/excelImport.do">

请选文件:<input type="file" name="excelFile">

<input type="submit" value="导入" onclick="return impExcel();"/>

</form>

action中获取前台传来数据并保存

/**

* excel 导入文件

* @return

* @throws IOException

*/

@RequestMapping("/usermanager/excelImport.do")

public String excelImport(

String filePath,

MultipartFile excelFile,HttpServletRequest request) throws IOException{

log.info("<<<<<<action:{} Method:{} start>>>>>>","usermanager","excelImport" );

if (excelFile != null){

String filename=excelFile.getOriginalFilename();

String a=request.getRealPath("u/cms/www/201509");

SaveFileFromInputStream(excelFile.getInputStream(),request.getRealPath("u/cms/www/201509"),filename);//保存到服务器的路径

}

log.info("<<<<<<action:{} Method:{} end>>>>>>","usermanager","excelImport" );

return "";

}

/**

* 将MultipartFile转化为file并保存到服务器上的某地

*/

public void SaveFileFromInputStream(InputStream stream,String path,String savefile) throws IOException

{

FileOutputStream fs=new FileOutputStream( path + "/"+ savefile);

System.out.println("————"+path + "/"+ savefile);

byte[] buffer =new byte[1024*1024];

int bytesum = 0;

int byteread = 0;

while ((byteread=stream.read(buffer))!=-1)

{

bytesum+=byteread;

fs.write(buffer,0,byteread);

fs.flush();

}

fs.close();

stream.close();

}

⑥ Java上传excel,Excel数据或者格式会影响上传速度,Excel哪些因素会影响上传速度

如果只是文件上传,那么上传速度只是与文件大小有关,而与里面的数据是无关的。之所以2000条数据的Excel比3000条数据的Excel上传还慢,应该是你的上传过程除了上传文件,还做了数据解析(读取Excel)的功能,如果是这样的话,那么整个上传速度还与数据内容有关,虽然数据量小,但数据内容多,解析速度慢,这样也会导致你说的问题。如果想解决此问题,可以分步进行,上传时只上传文件,后台接收到文件再统一解析处理。这样既容易查找问题,又可以很好的解耦。

⑦ (急)java上传一个excel文件,同时上传同目录下的apk和图片

大概 思路 :public static void readExcel(String pathname, PrintWriter out) { try { //打开文件 Workbook book = Workbook.getWorkbook(new File(pathname)) ; //取得第一个sheet Sheet sheet = book.getSheet(0); //取得行数 int rows = sheet.getRows(); for(int i = 0; i < rows; i++) { Cell [] cell = sheet.getRow(i); for(int j=0; j<cell.length; j++) { //getCell(列,行) //out.print(sheet.getCell(j, i).getContents()); //out.print(""); //同目录下的apk和图片 String apk_path=""; String image_path=""; File file = new File(pathname); if (file.isDirectory()) { File[] t = file.listFiles();//获取目录下面的所有图片 for (int x = 0,len=t.length; x < len; x++) { if(t[i].isFile()) { String filename=t[i].getName();//取出文件名 String index= filename.substring(filename.lastIndexOf("."),filename.length()); if(index=="apk") { apk_path="/../../"+filename;//具体路径 } if(index=="jgp"||(index=="gif")) { image_path+="/../../"+filename+"|";//具体路径 } } } } image_path=image_path.substring(0,image_path.lastIndexOf("|")); String sql="insert table x (id,image,apk)valus(?,?,?)"; ….. } out.println("<br/>"); } //关闭文件 book.close(); } catch (BiffException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }

⑧ java怎么把excel文件导入到web网页上显示

1. 要正确的将Web客户端的Excel文件导入到服务器的数据库中,需要将客户端的Excel文件上传到服务器上。可以使用FileUpload控件完成。2. Excel文件上传到服务器指定的目录中,这里假设是该站点的upfiles目录中。3. 使用SQL语句从upfiles目录中的上传Excel文件中读取数据显示或写入数据库

⑨ java 怎么从excel文件导入到oracle数据库中

java操作excel一般都使用poi来完成:

1、下载poi相关jar,maven的集成如下:(把${poi.version}替换成你要的版本)

<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>${poi.version}</version><scope>provided</scope></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>${poi.version}</version><scope>provided</scope></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>${poi.version}</version><scope>provided</scope></dependency>

2、根据poi相关api读取sheet、row、cell,获得excel的数据:

封装row的对象,即每一行数据为一个对象,每个cell为对象里的一个属性,

整个sheet的数据装进集合里;

3、处理数据,可以对数据进行验证或其他操作;

4、写数据库操作。

⑩ java web 怎么导入excel文件

1.要正确的将Web客户端的Excel文件导入到服务器的数据库中,需要将客户端的Excel文件上传到服务器上。可以使用FileUpload控件完成。2.Excel文件上传到服务器指定的目录中,这里假设是该站点的upfiles目录中。3.使用SQL语句从upfiles目录中的上传Excel文件中读取数据显示或写入数据库。

未经允许不得转载:山九号 » javaexcel文件上传|java中怎么把文件上传到服务器的指定路径

赞 (0)