日历
package Mycal; import java.io.FileWriter; import java.util.Calendar; public class GenCalHtml { public String getCalTable(int year) { String calStr = ""; calStr += "<table id='c' border='0' cellspacing='0' style = 'margin-left:18px;margin-top:18px;margin-right:18px;margin-bottom:18px'>"; calStr += "<tr>\r\n"; calStr += "<td align=center>" + getCalTable(year, 1) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 2) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 3) + "</td>\r\n"; calStr += "</tr>\r\n"; calStr += "<tr>\r\n"; calStr += "<td align=center>" + getCalTable(year, 4) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 5) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 6) + "</td>\r\n"; calStr += "</tr>\r\n"; calStr += "<tr>\r\n"; calStr += "<td align=center>" + getCalTable(year, 7) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 8) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 9) + "</td>\r\n"; calStr += "</tr>\r\n"; calStr += "<tr>\r\n"; calStr += "<td align=center>" + getCalTable(year, 10) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 11) + "</td>\r\n"; calStr += "<td align=center>" + getCalTable(year, 12) + "</td>\r\n"; calStr += "</tr>\r\n"; return calStr; } public static String getCalTable(int year, int month){ String calTable = ""; int numOfDays = getNumOfDays(year , month); Calendar cal = Calendar.getInstance(); cal.set(year, month-1,1); int beginDateOfWeek = cal.get(Calendar.DAY_OF_WEEK)-1; calTable += "<table id='c' border='1' cellspacing=0 cellpadding=0 style='margin-left:18px;margin-top:18px;margin-right:18px;margin-bottom:18px'>"; calTable += "<tr>\r\n"; calTable += "<td height=25 align=center colspan=7><B>" + year + "年" + month + "月</B></td>\r\n"; calTable += "</tr>\r\n"; calTable += "<tr>\r\n"; calTable += "<td width=32 height=25 align=center>日</td>\r\n"; calTable += "<td width=32 align=center>一</td>\r\n"; calTable += "<td width=32 align=center>二</td>\r\n"; calTable += "<td width=32 align=center>三</td>\r\n"; calTable += "<td width=32 align=center>四</td>\r\n"; calTable += "<td width=32 align=center>五</td>\r\n"; calTable += "<td width=32 align=center>六</td>\r\n"; calTable += "</tr>\r\n"; int lineNo = 0; int dateNum = 1; calTable += "<tr>\r\n"; for ( int i=0;i<beginDateOfWeek; i++) { calTable += "<td width=32 align=center> </td>\r\n"; } for (int i=beginDateOfWeek; i<7; i++) { calTable +="<td width=32 align=center>"+ dateNum +"</td>\r\n"; dateNum ++; } calTable += "</tr>\r\n"; for (lineNo=1; lineNo<6;lineNo++) { calTable += "<tr>\r\n"; for(int i=0; i<7; i++){ calTable +="<td width=32 align=center>"+ (dateNum<=numOfDays?dateNum:" "); dateNum++; } calTable += "</tr>\r\n"; } calTable += "</table>\r\n"; return calTable; } public static int getNumOfDays(int year , int month) { if ( month < 1 || month > 12 ) return 0; if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12) return 31; if (month != 2 ) return 30; if ( (year % 4) == 0 ) return 29; return 28; } }