• 大小: 53KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-05-12
  • 语言: Java
  • 标签: java  周易  生辰  八字  

资源简介

java 时间转换成精确的生辰八字 全部源代码 并附上了demo 介绍了使用方法 并降低为1分 粗略发测和对比后,目前认为可以精确到秒

资源截图

代码片段和文件信息

package com.zmh.Bazilogic;
/*
* NEW一个Bazi类 传入时间可以得出生辰八字getbazi(); 
*/
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
/**
 * @author 刘座山
 * @mail 361186482@qq.com
 */
public class Bazi {
public static final String tg[]={“甲““乙““丙““丁““戊““己““庚““辛““壬““癸“};
public static final String dz[]={“子““丑““寅““卯““辰““巳““午““未““申““酉““戌““亥“};
final static SolarTerm st=new SolarTerm();
public static  DateFormat df = new SimpleDateFormat(“yyyy-MM-dd kk:mm:ss“);
private  Date date=new Date();
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
int year=0yue=0;

public Bazi() {
}
public Bazi(Date d0) {
date=d0;
}
/**
 * 获取农历年 需要另加1900
 */
public  int getyear() throws Exception{

Date lichun=st.JQtest(date.getYear()-3)[21];
long lctime=lichun.getTime();
long nowtime=date.getTime();
if(nowtime>=lctime){
year=date.getYear();
}else{
year=date.getYear()-1;
}
return year;
}
/**
 * 取节气
 */
public static Date [] getjq(int year) throws Exception{
Date d0[]=new Date[24];
for(int i=0;i<24;i++){

if(i<3){
d0[i]=st.JQtest(year-1)[i+21];
}
else{
d0[i]=st.JQtest(year)[i-3];
}
}
return d0;
}
/**
*获取农历月份 0~11
*/
public  int getyue() throws Exception{
int yue=0;
int year=getyear()+1900;
Date d0[]=getjq(year);
long nowtime=date.getTime();
for(int i=0;i<24;i++){
long jqtime=d0[i].getTime();
if(nowtime>jqtime){
yue=i/2;
}else
break;
}
return yue;
}
/**
 * 求年天干数
 */
public int getyeartg() throws Exception{
int ts=(getyear()+6)%10;
return ts;
}
/**
 * 求年地支数
 */
public int getyeardz() throws Exception{
int dz=getyear()%12;
return dz;
}
/**
 * 获取年干支
 */
public String getyeargz() throws Exception{
String bz=““;
bz=tg[getyeartg()]+dz[getyeardz()];
return bz;
}

/**
 * 求月天干数
 */
public int getyuetg() throws Exception{
int ts=(getyear()*12+getyue()+4)%10;
return ts;
}
/**
 * 求月地支数
 */
public int getyuedz() throws Exception{
int dz=(getyear()*12+getyue()+2)%12;
return dz;
}
/**
 * 获取月八字
 */
public String getyuegz() throws Exception{
String gz=““;
gz=tg[getyuetg()]+dz[getyuedz()];
return gz;
}
/**
 * 日期距离1900天数
 */
  public int tian2(Date date) throws Exception  
    {  
   Date date2=df.parse(“1900-1-1 00:00:00“);
        Calendar cal = Calendar.getInstance();  
        cal.setTime(date);  
        long time1 = cal.getTimeInMillis();               
        cal.setTime(date2);  
        long time2 = cal.getTimeInMillis();       
        long between_days=(time1-time2)/(1000*3600*24);  
       return Integer.parseInt(String.valueOf(between_days));         
    }  
/**
 * 求日天干数
 */
public int getritg() throws Exce

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-05-22 12:44  test\
     文件         301  2016-05-22 12:44  test\.classpath
     文件         380  2016-05-22 12:44  test\.project
     目录           0  2016-05-22 12:44  test\.settings\
     文件         598  2016-05-22 12:44  test\.settings\org.eclipse.jdt.core.prefs
     目录           0  2016-05-22 12:44  test\bin\
     目录           0  2016-05-22 12:44  test\bin\com\
     目录           0  2016-05-22 12:44  test\bin\com\zmh\
     目录           0  2016-05-22 12:44  test\bin\com\zmh\Bazilogic\
     文件        5550  2016-05-22 12:44  test\bin\com\zmh\Bazilogic\Bazi.class
     文件         395  2016-05-22 12:44  test\bin\com\zmh\Bazilogic\SolarTerm$ZD.class
     文件       40334  2016-05-22 12:44  test\bin\com\zmh\Bazilogic\SolarTerm.class
     文件        1036  2016-05-22 12:44  test\bin\com\zmh\Bazilogic\demo.class
     目录           0  2016-05-22 12:44  test\src\
     目录           0  2016-05-22 12:44  test\src\com\
     目录           0  2016-05-22 12:44  test\src\com\zmh\
     目录           0  2016-05-22 12:44  test\src\com\zmh\Bazilogic\
     文件        4937  2016-05-22 12:44  test\src\com\zmh\Bazilogic\Bazi.java
     文件       47699  2016-05-22 12:44  test\src\com\zmh\Bazilogic\SolarTerm.java
     文件         761  2016-05-22 12:44  test\src\com\zmh\Bazilogic\demo.java

评论

共有 条评论