纯Java周历的写法
2004-10-15 10:18
363 查看
import java.util.*;
import com.unigroup2000.Global;
import java.io.*;
import javax.servlet.http.*;
import java.text.*;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class WeekCalendar {
public WeekCalendar() throws IOException{
}
public Calendar CalendarSetTime(String sCurrDate){
Calendar oCalendar = Calendar.getInstance();
Date oDate = new Date();
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
if(!sCurrDate.equals("")&&sCurrDate!=null){
try{
oCalendar.setTime(sdf.parse(sCurrDate));
}catch(Exception ex){
ex.printStackTrace(System.err);
System.out.println("日期格式转换错误:="+sCurrDate );
}
}
else
oCalendar.setTime(oDate);
return oCalendar;
}
public List Calendar(HttpServletRequest request ,HttpServletResponse response,String sCurrDate){
String[] oneWeekDay={"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
Calendar oCal=null;
String LoopDate="",Flag="";
int iweek=0,iCurrWeek=0;
Date oDate = new Date();
oCal=CalendarSetTime(sCurrDate);//设置时间
iweek=oCal.get(Calendar.DAY_OF_WEEK)-1;
HashMap oHashMap=new HashMap();;
String DataSet[]= null;
List DayAndWeek = new ArrayList();
for(int i=iweek;i>0;i--){
oCal.add(Calendar.DATE,-i);
LoopDate=oCal.get(Calendar.YEAR)+"-"+(oCal.get(Calendar.MONTH)+1)+"-"+oCal.get(Calendar.DATE);
oCal=CalendarSetTime(sCurrDate);//重置时间
DataSet = new String[2];
DataSet[0]=LoopDate;
DataSet[1]=oneWeekDay[(iCurrWeek++)];
DayAndWeek.add(DataSet);
}
for(int i=0;i<7-iweek;i++){
oCal.add(Calendar.DATE,i);
LoopDate=oCal.get(Calendar.YEAR)+"-"+(oCal.get(Calendar.MONTH)+1)+"-"+oCal.get(Calendar.DATE);
oCal=CalendarSetTime(sCurrDate);
DataSet = new String[2];
DataSet[0]=LoopDate;
DataSet[1]=oneWeekDay[(iCurrWeek++)];
DayAndWeek.add(DataSet);
}
return DayAndWeek;
}
import com.unigroup2000.Global;
import java.io.*;
import javax.servlet.http.*;
import java.text.*;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class WeekCalendar {
public WeekCalendar() throws IOException{
}
public Calendar CalendarSetTime(String sCurrDate){
Calendar oCalendar = Calendar.getInstance();
Date oDate = new Date();
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
if(!sCurrDate.equals("")&&sCurrDate!=null){
try{
oCalendar.setTime(sdf.parse(sCurrDate));
}catch(Exception ex){
ex.printStackTrace(System.err);
System.out.println("日期格式转换错误:="+sCurrDate );
}
}
else
oCalendar.setTime(oDate);
return oCalendar;
}
public List Calendar(HttpServletRequest request ,HttpServletResponse response,String sCurrDate){
String[] oneWeekDay={"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
Calendar oCal=null;
String LoopDate="",Flag="";
int iweek=0,iCurrWeek=0;
Date oDate = new Date();
oCal=CalendarSetTime(sCurrDate);//设置时间
iweek=oCal.get(Calendar.DAY_OF_WEEK)-1;
HashMap oHashMap=new HashMap();;
String DataSet[]= null;
List DayAndWeek = new ArrayList();
for(int i=iweek;i>0;i--){
oCal.add(Calendar.DATE,-i);
LoopDate=oCal.get(Calendar.YEAR)+"-"+(oCal.get(Calendar.MONTH)+1)+"-"+oCal.get(Calendar.DATE);
oCal=CalendarSetTime(sCurrDate);//重置时间
DataSet = new String[2];
DataSet[0]=LoopDate;
DataSet[1]=oneWeekDay[(iCurrWeek++)];
DayAndWeek.add(DataSet);
}
for(int i=0;i<7-iweek;i++){
oCal.add(Calendar.DATE,i);
LoopDate=oCal.get(Calendar.YEAR)+"-"+(oCal.get(Calendar.MONTH)+1)+"-"+oCal.get(Calendar.DATE);
oCal=CalendarSetTime(sCurrDate);
DataSet = new String[2];
DataSet[0]=LoopDate;
DataSet[1]=oneWeekDay[(iCurrWeek++)];
DayAndWeek.add(DataSet);
}
return DayAndWeek;
}
相关文章推荐
- 单例模式的N种写法(Java版)
- java 1.5中for循环的新写法
- [Java][Web]Web 工程中的各类地址的写法
- java 写法推荐
- Java面向对象 继承类的一些特殊写法
- Java不常用的一些写法
- Java 单元测试的标准写法
- 详解Java中clone的写法
- Java中Mongo Aggregate 的$match的写法
- JAVA for循环写法
- java实现斐波那契数列两种写法
- Java引用多个jar包的写法
- Java:单例模式的七种写法
- JAVA常用数据库JDBC连接写法
- Code Conventions for Java java代码写法规范小结
- 【Java工具类】可变参数的写法和案例
- java之foreach写法
- java问卷调查java 写法
- 几种java for循环写法介绍
- 【Java基础】线程笔记——线程安全的单例模式的写法