導航:首頁 > 編程語言 > java判斷是否為日期

java判斷是否為日期

發布時間:2024-10-13 10:57:24

① 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 編程從屏幕輸入8-10位字元串,判斷是否為日期

publicstaticvoidmain(String[]args)
{
StringcheckValue="2000/03/31";
checkValue=checkValue.replaceAll("/","")+"000000";
Stringyear=checkValue.substring(0,4);//獲取年份
Stringmonth=checkValue.substring(4,6);//獲取月份
BooleanisLeap=leapYear(Integer.parseInt(year));//判斷閏年
System.out.println(isLeap);
StringBuffereL=newStringBuffer();
StringlongMonth="01030507081012";//31天的月份
Stringfix="([2][0-3]|[0-1][0-9]|[1-9])[0-5][0-9]([0-5][0-9]|[6][0])";


if(isLeap&&month.equals("02")){//針對2月份的情況【閏年】
eL.append("\d{4}([1][0-2]|[0][0-9])([2][0-1]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}elseif(!isLeap&&month.equals("02")){//針對2月份的情況【非閏年】
eL.append("\d{4}([1][0-2]|[0][0-9])([2][0-1]|[1-2][0-8]|[0][1-9]|[1-9])"+fix);
}elseif(longMonth.contains(month)){//31天月份
eL.append("\d{4}([1][0-2]|[0][0-9])([3][0-1]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}else{//30天月份
eL.append("\d{4}([1][0-2]|[0][0-9])([3][0]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}
Patternp=Pattern.compile(eL.toString());
Matcherm=p.matcher(checkValue);
booleanflag=m.matches();
if(flag)
{
System.out.println("格式正確");
}
else
{
System.out.println("格式錯誤");
}

}
publicstaticbooleanleapYear(intyear){
BooleanisLeap=false;
if(((year%100==0)&&(year%400==0))
||((year%100!=0)&&(year%4==0)))
isLeap=true;
returnisLeap;
}

③ java 判斷某個日期是不是今天

給您寫了一遍。

packagedemo;

importjava.text.SimpleDateFormat;
importjava.util.Date;
/**
*
*開發公司:SOJSON在線工具<p>
*版權所有:©www.sojson.com
*博客地址:http://www.sojson.com/blog/
*<p>
*
*注釋寫這里
*
*<p>
*
*區分責任人日期說明<br/>
*創建周柏成2017年4月18日<br/>
*
*@authorzhou-cheng
*@[email protected]
*@version1.0,2017年4月18日<br/>
*
*/
publicclassMain{

publicstaticvoidmain(String[]args){
//調用
booleanresult=isNow(newDate());
System.out.println(result?"是今天。":"不是今天。");

}
/**
*判斷時間是不是今天
*@paramdate
*@return是返回true,不是返回false
*/
privatestaticbooleanisNow(Datedate){
//當前時間
Datenow=newDate();
SimpleDateFormatsf=newSimpleDateFormat("yyyyMMdd");
//獲取今天的日期
StringnowDay=sf.format(now);


//對比的時間
Stringday=sf.format(date);

returnday.equals(nowDay);}
}

④ 求解,Java如何判斷Date類型的日期格式是什麼

1、Date是沒有格式的。

Date是一個包裝了毫秒值的瘦包裝器,表示自 1970 年 1 月 1 日 00:00:00 GMT 以來經過的毫秒數。


2、那麼我們通常說的日期格式是怎麼回事呢?

我們說的日期格式,是將Date,即是毫秒數按照一定的格式展示給我們,展示出來的值是【String字元串】而不是【Date日期】


所以,你可以將Date轉化為任意你要的格式


舉例說明下:

⑤ 如何判斷java 一個String字元串里有沒有日期並且修改成指定格式

可以使用正則表達式進行匹配替換,例如下面代碼:

publicclassApp50{

publicstaticvoidmain(String[]args){

Stringdemo="這個日期是2018/5/6書寫出來的";

//xxxx年xx月xx日格式
Stringdemo2=demo.replaceAll("(\d{4})/(\d{1,2})/(\d{1,2})","$1年$2月$3日");
System.out.println(demo2);

//xxxx-xx-xx格式
demo2=demo.replaceAll("(\d{4})/(\d{1,2})/(\d{1,2})","$1-$2-$3");
System.out.println(demo2);
}
}

運行結果:

這個日期是2018年5月6日書寫出來的

這個日期是2018-5-6書寫出來的

⑥ 用JAVA正則表達式怎麼匹配年月日(比如要求輸入為出生日期)

建議使用 ^(\d{2}|\d{4})[-/](0?[1-9]|1[12])[-/](0?[1-9]|[12]\d|3[01])$ 來匹配(日期不一定有效),然後嘗試轉換成日期.如果要嚴謹點可以用^(\d{2}|\d{4})[-/](((0?[13578]|10|12)[-/](0?[1-9]|[12]\d|3[01]))|((0?[469]|11)[-/](0?[1-9]|[12]\d|30))|(0?2[-/](0?[1-9]|[12]\d)))$但是這里還是有個問題:將所有年份的2月29日都當作有效日期

閱讀全文

與java判斷是否為日期相關的資料

熱點內容
程序員多大轉行 瀏覽:879
單片機燈 瀏覽:871
如何啟動u8管理伺服器 瀏覽:280
程序員消費多少 瀏覽:510
編譯室半年總結怎麼寫範文 瀏覽:469
windowsapi編程入門教程 瀏覽:837
單片機51系列 瀏覽:58
python迭代器是什麼 瀏覽:538
bat備份文件夾刪除 瀏覽:928
推拉的文件夾 瀏覽:517
嵌入式linux前景 瀏覽:13
屏幕滾動命令 瀏覽:504
解壓珠含毒素 瀏覽:770
美文誦讀配樂用什麼app 瀏覽:567
java代碼設置字體 瀏覽:448
linuxsamba重啟命令 瀏覽:822
獲取Idphp源碼 瀏覽:259
phpgetinstance的作用 瀏覽:661
神話雲伺服器 瀏覽:355
php7擴展庫 瀏覽:659