㈠ 如何把excel數據導入java
用第三和源芹方組件poi讀取,給個例子你參考一下
public class ApachePOIExcelRead {
private static final String FILE_NAME = "/tmp/MyFirstExcel.xlsx";
public static void main(String[] args) {
try {
FileInputStream excelFile = new FileInputStream(new File(FILE_NAME));
Workbook workbook = new XSSFWorkbook(excelFile);
Sheet datatypeSheet = workbook.getSheetAt(0);
Iterator<裂槐Row>喚畢 iterator = datatypeSheet.iterator();
while (iterator.hasNext()) {
Row currentRow = iterator.next();
Iterator<Cell> cellIterator = currentRow.iterator();
while (cellIterator.hasNext()) {
Cell currentCell = cellIterator.next();
//getCellTypeEnum shown as deprecated for version 3.15
//getCellTypeEnum ill be renamed to getCellType starting from version 4.0
if (currentCell.getCellTypeEnum() == CellType.STRING) {
System.out.print(currentCell.getStringCellValue() + "--");
} else if (currentCell.getCellTypeEnum() == CellType.NUMERIC) {
System.out.print(currentCell.getNumericCellValue() + "--");
}
}
System.out.println();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
㈡ java代碼怎麼實現 excel導入的文本值轉換成日期
讀取excel文件中日期內容是通過poi獲取的,代碼如下:
HSSFWorkbookexcbook=newHSSFWorkbook(ExcFile);
//獲取第一個仿州sheet頁HSSFSheetexcSheet=excbook.getSheetAt(0);
//獲取第一行
HSSFRowoneRow=excSheet.getRow(0);
//獲取第一行的第一個表格
HSSFCelloneCell=oneRow.getCell(0);
switch(oneCell.getCellType()){
caseHSSFCell.CELL_TYPE_NUMERIC:
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");
if(HSSFDateUtil.isCellDateFormatted(oneCell)){
Stringstr=sdf.format(HSSFDateUtil.getJavaDate(oneCell.getNumericCellValue())).toString();
System.out.println(str);
慶大友}
break;
}
譽槐
㈢ excel中日期格式是數字,想轉成java的日期格式,遇到了問題
java讀取excel時間格式出現數字的處理方法:
Excel存儲日期、時間均以數值類型進行存儲,讀取時POI先判斷是是否是數值類型,再進行判斷轉化
1、數值格式(CELL_TYPE_NUMERIC):
1.純數值格式:getNumericCellValue() 直接獲取數據
2.日期格式:處理yyyy-MM-dd, d/m/yyyy h:mm, HH:mm 等不含文字的日期格式
1).判斷是否是日期格式:HSSFDateUtil.isCellDateFormatted(cell)
2).判斷是日期或者時間
cell.getCellStyle().getDataFormat() == HSSFDataFormat.getBuiltinFormat("h:mm")
OR: cell.getCellStyle().getDataFormat() == HSSFDataFormat.getBuiltinFormat("yyyy-MM-dd")
3.自定義日期格式:處理yyyy年m月d日,h時mm分,yyyy年m月等含文字的日期格式
判斷cell.getCellStyle().getDataFormat()值,解析數值格式
yyyy年m月d日----->31
m月d日---->58
h時mm分--->32
舉例說明:
private String parseExcel(Cell cell) {
String result = new String();
㈣ java導出excel時的日期和時間問題
提問雖然已經過去很長時間了,但是這個問題很普遍。我來補充一下,希望大家能看到吧、、
給導出時間格式的欄位增加一個css樣式:mso-number-format:'\@' 即可('\@'是格式化為文本方式)。
例:<td style="mso-number-format:'\@';"><%=myDateTime %></td>
㈤ java讀取excel文件,怎麼取日期列
一、定義excel的格式為普通文本,讀出來永遠都是String格式的字元串,再通過字元串轉時間。
二、定義為時間格式的,讀取用getDateCellValue。
如果你這樣一直讀出來都是數字的話,轉為long的毫秒,再轉為date。
那個數字是日期距離1900年1月1日的天數
㈥ JAVA如何從excel表格中讀取正確的時間
excel的VBA里:
dim xStrTime as string
xstrtime = format(celles(2,1).value,"hh:mm:ss")
可以把單元格A2的時間賦值給字元串變數xstrtime,格式就是24小時制。
你的JAVA應該也可以用。
㈦ java 如何讀取Excel中的日期 我取得的日期怎麼是這樣的例如:12-6-27 我想得到2012-04-27格式的
這個問題我也遇到過 excle讀取日期 導入到資料庫裡面的如扮哪的日期格式就是12-6-27
所以要做下處理 給你個例子:
import com.ibm.icu.text.SimpleDateFormat;
class p{ public static void main(String[] args) { String s= "12-07-03";//你取得的日期格式 String y="MM-dd-yy";//yy是年缺慧,dd是月,MM是日 String x="yyyy-MM-dd"; SimpleDateFormat str = new SimpleDateFormat(y); SimpleDateFormat format = new SimpleDateFormat(x); try { str.parse(s);//這個是按照y的格式,將s變成一渣碼個Date對象 format.format( str.parse(s));//按照X的格式,輸出Date對象的值 System.out.println(format.format( str.parse(s))); //結果是2003-12-07 } catch (Exception e) { e.printStackTrace(); } }}
㈧ Java 出力Excel 文件,並向該文件中寫固定格式的日期。我往文件里寫的是yyyy-mm-dd
你寫入的yyyy-mm-dd而顯示yyyy/mm/dd這是正常的,表示EXCEL理解了你寫入的數據是日期格式,顯示的時候由於沒有指定單元格的格式,所以系統以默認的yyyy/mm/dd格式顯示,這個其實沒關系。
如果你特別希望顯示為yyyy-mm-dd格式,可以寫入內容前增加一個單引號(半形英文),這樣強制告訴EXCEL這是個文本,不要理解為日期。
還有一個辦法,就是JAVA裡面寫入數據完畢,設置單元格的格式為yyyy-mm-dd,通過設置.NumberFormat 屬性為 "yyyy-mm-dd"實現。