国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java讀取excel文件并復制(copy)文件到指定目錄示例

java讀取excel文件并復制(copy)文件到指定目錄示例

2019-11-07 12:48java教程網 JAVA教程

這篇文章主要介紹了java讀取excel文件并復制文件到指定目錄示例,需要的朋友可以參考下

代碼如下:


mport java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

 

import org.apache.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class DeployByExcel {
 private static Logger logger= Logger.getLogger(DeployByExcel.class);

 static final int BUFFER = 8192; 


 //Excel
 private HSSFWorkbook workbook ;

 /**
  * 讀取Excel文件并將文件列表放到list中
  * @param sheetNumber
  * @param dir excel文件所在目錄
  * @return
  * @throws FileNotFoundException
  * @throws IOException
  */
 public List<String> getDatasInSheet(int sheetNumber,File dir) throws FileNotFoundException, IOException{

  File[] files = dir.listFiles();  
  List<String> result = new ArrayList<String>(); 
        for(File f : files)
        {
         if(!f.getName().toLowerCase().endsWith(".xls"))
         {
          continue;
         }
         workbook = new HSSFWorkbook(new FileInputStream(f));

   //獲得指定的表
   HSSFSheet sheet = workbook.getSheetAt(sheetNumber); 
   //獲得數據總行數
   int rowCount = sheet.getLastRowNum();
   logger.info("found excel rows count: " + rowCount);
   if (rowCount < 1) {
    return result;
   } 
   //逐行讀取數據
   for (int rowIndex = 4; rowIndex <= rowCount; rowIndex++) {  
    //獲得行對象
    HSSFRow row = sheet.getRow(rowIndex); 
    if (row != null) {
     List<Object> rowData = new ArrayList<Object>();
     //獲得本行中單元格的個數
     int columnCount = row.getLastCellNum();
     //獲得本行中各單元格中的數據
     HSSFCell cell = row.getCell(1);
     //獲得指定單元格中數據
     String str = (String)this.getCellString(cell);
     if (str!=null && str.length()>1)
      result.add(str);
    }
   }
        }
  return result;
 }


 private void copy(String sourcePath,String destPath,List<String> fileList,String webContent) throws IOException{
  int num =1 ;
  for (String str : fileList){
   str = str.replace(".java", ".class");
   if (str.indexOf("/")!=-1){

    if (str.indexOf("src")==0){
     str = str.replace("src", "WEB-INF/classes");
    }else if (str.toUpperCase().indexOf(webContent.toUpperCase())==0){
     str = str.replace(webContent+"/", "");
    }

    
    boolean f = copyFile(str,sourcePath,destPath);
    if(f)
    {
     logger.info("The file is:" + num);
     num ++;

     String fileName1 = str;
     int n = 1;
     while(fileName1.endsWith(".class"))
     {
      str = fileName1.replace(".class", "$" + n +".class");
      if(!copyFile(str,sourcePath,destPath))
      {
       break;
      }
      n ++;
     }
    }
   }
  }
 }
 /**
  * copy str to destPath
  * 
  * @param str
  * @param sourcePath
  * @param destPath
  * @return boolean isFile return true;else return false;
  * @throws IOException
  */
 private boolean copyFile(String str,String sourcePath,String destPath) throws IOException
 {
  boolean f = false;
  String destFilePath = destPath+str;
  String sourceFilePath = sourcePath+str;
  File newDir = new File(destFilePath.substring(0,destFilePath.lastIndexOf('/')));
  File sourceFile = new File(sourceFilePath.trim());
  if(!sourceFile.exists())
  {
   return f;
  }
  logger.info("dest:"+destFilePath+"     "+"source:"+sourceFilePath);
  File destFile = new File(destFilePath.trim());
  if (!newDir.exists()){
   newDir.mkdirs();
  }
  if(!sourceFile.isDirectory())
  {
   InputStream in=new FileInputStream(sourceFile);
   FileOutputStream out=new FileOutputStream(destFile);
   byte[] buffer=new byte[1024];
   int ins;
   while((ins=in.read(buffer))!=-1){
    out.write(buffer,0,ins);
   }
   in.close();
   out.flush();
   out.close();
   f = true;
  }
  return f;

 }
 /**
 * 獲得單元格中的內容
 * @param cell
 * @return
 */
 protected Object getCellString(HSSFCell cell){
  Object result = null;
     if (cell != null) {
      int cellType = cell.getCellType();
      switch(cellType){
       case HSSFCell.CELL_TYPE_STRING :
        result = cell.getRichStringCellValue().getString();
        break;
       case HSSFCell.CELL_TYPE_NUMERIC:
        result=cell.getNumericCellValue();
        break;
       case HSSFCell.CELL_TYPE_FORMULA:
        result = cell.getNumericCellValue();
        break;
       case HSSFCell.CELL_TYPE_ERROR:
        result=null;
        break;
       case HSSFCell.CELL_TYPE_BOOLEAN:
        result=cell.getBooleanCellValue();
        break;
       case HSSFCell.CELL_TYPE_BLANK:
        result=null;
        break;
      }
     }
     return result;
 }
  

 /**
  * 
  * @param args args[0]:Excel文件所在目錄;args[1]:源目錄(編譯后的文件目錄);args[2]:發布目錄
  * @throws Exception
  */
 public static void main(String[] args) throws Exception {

  if(args == null || args.length <3 )
  {
   logger.info("file is not find;");

   logger.fatal("java cn.id5.deploy.DeployByExcel $0 $1 $2 $3 \n$0:Excel文件所在目錄;$1:源目錄(編譯后的文件目錄);$2:發布目錄;$3:jsp所在目錄(默認為webContent,可空)\nexiting.");
   System.exit(0);
  }

    File file = new File(args[0]);
    DeployByExcel deploy = new DeployByExcel();
    List<String> fileList = deploy.getDatasInSheet(0,file);
    String classPath = args[1];
    String destPath = args[2]; 
    String webContent = (args.length> 3 && args[3] != null && args[3].length() > 1) ? args[3] : "WebContent";
    deploy.copy(classPath, destPath, fileList, webContent);
    ///tmp/gboss /media/terry/doc/Project_ID5/gboss/WebContent/

 }

}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久久久久久久久久久久久av | 国产一区二区三区免费在线 | 日韩成人av在线 | 久久丁香 | 成人不卡在线观看 | 午夜一级片 | 成人精品一区二区 | 成人国产精品156免费观看 | 久久老妇 | 日韩三级电影免费观看 | 欧美另类视频在线 | 这里只有国产精品 | 日韩视频在线观看一区 | www.国产视频 | 欧美精品一区自拍a毛片在线视频 | 色吧欧美 | 狠狠躁夜夜躁人人爽天天高潮 | 欧美成人激情视频 | 欧美1区| 欧美日韩中文字幕 | av网站免费看| 久久久国产一区二区三区 | 亚洲视频成人 | 91免费在线 | 色网站在线免费观看 | 老妇60一区二区三区 | 午夜精品成人一区二区 | 亚洲一区二区 | 成人羞羞网站 | 欧美一区二区三区在线 | 亚洲电影在线看 | 激情图区在线观看 | 国产综合视频 | 美女视频一区 | 日韩欧美中文字幕在线视频 | 免费三级网站 | 黄色免费视频 | 手机av在线 | 精品一区二区三区四区 | 毛片在线视频 | 亚洲视频一区 |