tiptop使用java的poi包实现EXCEL导入导出功能
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                tiptop使用java的poi包实现EXCEL导入导出功能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                4gl可以調用java的poi包實現EXCEL的導入導出,今天分享一個EXCEL導入的功能!?
 一:環境搭建?
 1:poi文件導入?
 首先下載POI文件(找不到的可以私信我),解壓后上傳到ERP的服務器中?
 一般位置放在$TOP/ds4gl2/bin/javaad/jar,當然,你也可以根據喜好自行定義!?
 然后,在系統中編輯tiptop_env文件,路徑在$TOP/bin/tiptop_env 這里(重要文件,編輯前記得備份,弄壞了會導致系統癱瘓)?
 打開文件,將CLASSPATH 的環境變量添加一個poi文件的路徑,?
 范例:CLASSPATH=$TOP/ds4gl2/bin/poi-3.17.jar:$TOP/ds4gl2/bin/caozq/jxl.jar;export CLASSPATH(系統有CLASSPATH變量用在后面加,用:隔開其他的變量,沒有就再文末添加)?
 2:第一個步驟配置好了后,就可以愉快的調用java的poi包啦~
以下為導入功能使用范例,可以參考
# Pattern name...: cl_import_czq_excel.4gl # Descriptions...: 采用Java POI方式導入MS Excel # Date & Author..: 18/09/18 caozq IMPORT os IMPORT JAVA org.apache.poi.ss.usermodel.IndexedColors IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFDataFormat IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFWorkbook IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFSheet IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFRow IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFCell IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFCellStyle IMPORT JAVA org.apache.poi.hssf.usermodel.HSSFFont IMPORT JAVA org.apache.poi.poifs.filesystem.POIFSFileSystem IMPORT JAVA java.io.InputStream IMPORT JAVA java.io.FileInputStream DATABASE dsGLOBALS "../../config/top.global"DEFINE fs POIFSFileSystem DEFINE wb HSSFWorkbook DEFINE sheet HSSFSheet DEFINE row HSSFRow DEFINE is InputStreamFUNCTION cl_import_czq_excel() DEFINE l_prostr LIKE ze_file.ze03 DEFINE l_fileLocation STRING DEFINE colnum,rowcount INT DEFINE i,j INT DEFINE l_str,l_str1 STRING DEFINE l_tempdir STRING DEFINE l_filename LIKE type_file.chr1000#選擇要導入資料的Excel文件 BEGIN LET l_prostr = cl_getmsg("lib-201", g_lang) WHILE TRUE PROMPT l_prostr CLIPPED FOR l_fileLocation ATTRIBUTE(WITHOUT DEFAULTS) ON ACTION browse_document LET l_fileLocation = cl_browse_file() ON ACTION ACCEPT EXIT WHILE ON ACTION CANCEL EXIT WHILE ON IDLE g_idle_seconds CALL cl_on_idle() RETURN END PROMPT END WHILE #選擇要導入資料的Excel文件 END LET l_tempdir =fgl_getenv("TEMPDIR") #獲取臨時文件夾路徑 LET l_filename = os.Path.basename(l_fileLocation) #獲取導入文件名 LET l_str = os.Path.join(l_tempdir CLIPPED,l_filename CLIPPED) #拼接成服務器的完整路徑 IF NOT cl_upload_file(l_fileLocation,l_str) THEN #將文件先上傳到臨時文件夾CALL cl_err(NULL, "lib-212", 1)RETURN END IF LET is = FileInputStream.create(l_str) LET fs = POIFSFileSystem.create(is) LET wb = HSSFWorkbook.create(fs) LET sheet = wb.getSheetAt(0) #獲取EXCEL第一個頁簽 LET row = sheet.getRow(0) #獲取第一列標題欄 LET colnum = row.getPhysicalNumberOfCells() #獲取列總數LET rowcount = sheet.getPhysicalNumberOfRows() #獲取總行數 FOR i = 1 TO rowcount - 1 #從第二行開始循環 LET row = sheet.getRow(i)FOR j = 0 to colnum-1 #已標題欄列數為準LET l_str1 = row.getCell(j) #這里寫程序邏輯END FOREND FOREND FUNCTION總結
以上是生活随笔為你收集整理的tiptop使用java的poi包实现EXCEL导入导出功能的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: mysql 时间 本周 本月_MySQL
- 下一篇: Python中XGBoost的特性重要性
