Solved

date for months

Posted on 2004-09-20
7
252 Views
Last Modified: 2010-03-31
given a month and year as string(say "September 2004"), i want to return an arraylist from 01.09.2004 till 30.09.2004

Thanks
0
Comment
Question by:sangeetha
7 Comments
 
LVL 37

Expert Comment

by:zzynx
ID: 12101174
>> arraylist from 01.09.2004 till 30.09.2004
Do you want an arraylist of Strings or of Dates?
0
 
LVL 2

Author Comment

by:sangeetha
ID: 12101194
i think anything is Ok...

request.setAttribute("dates", getDatum("September", "2004"));

................
................

private static ArrayList getDatum(String month, String year) {
            
            ArrayList list = new ArrayList();
            
                          // What to do here?
            
            return list;
            
      }
am i right?
0
 
LVL 37

Expert Comment

by:zzynx
ID: 12101224
By heart (so not guaranteed without typos):

List arrayList = new ArrayList();


SimpleDateFormat fmt = SimpleDateFormat("dd MMMM yyyy");
Date d = fmt.parse("1 " + month + " " + year);

Calendar cal = Calendar.getInstance();
cal.setTime(d);

boolean stop = false;

int thisMonth = cal.get(Calendar.MONTH);
while (!stop) {
   arrayList.add( cal.getTime() );
   cal.add(Calendar.DATE, 1);
   stop = ( thisMonth!=cal.get(Calendar.MOHTH) )
}

return arrayList;
0
Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

 
LVL 35

Accepted Solution

by:
TimYates earned 25 total points
ID: 12101237
   String str = "September 2004" ;
    SimpleDateFormat sdf = new SimpleDateFormat( "MMMMM yyyy" ) ;
    SimpleDateFormat sdf2 = new SimpleDateFormat( "dd.MM.yyyy" ) ;
    sdf.setLenient( true );
    Date month = sdf.parse( str ) ;
    Calendar cal = Calendar.getInstance() ;
    cal.setTime( month );
    int curr = cal.get( Calendar.MONTH ) ;
    int next = curr ;
    ArrayList al = new ArrayList() ;
    while( next == curr )
    {
      al.add( sdf2.format( cal.getTime() ) ) ;
      cal.roll( Calendar.DAY_OF_YEAR, true );
      next = cal.get( Calendar.MONTH ) ;
    }
    for( int i = 0 ; i < al.size() ; i++ )
      System.out.println( al.get( i ) ) ;
0
 
LVL 13

Expert Comment

by:Webstorm
ID: 12101278
Hi sangeetha,


static final String[] month={"january","february","march","april","may","june",
                         "july","august","september","october","november","december"};

private static int getMonth(String s)
{
    for (int i=0;i<month.length;i++)
       if (month[i].equalsIgnoreCase(s)) return i+1;
    return -1;
}

private static int lm(int m,int a)
{
     m=(m+9)%12;
     if (m<11) return 31-((m^(m/5))&1);
     else return ( ((a%4)==0)&&( ((a%100)!=0) || ((a%400)==0) ) )?29:28;
}

private static String len2(int n)
{
     String t="0"+n;
     return t.substring(t.length()-2);
}

private static ArrayList getDatum(String month, String year) {

          int m=getMonth(month);
          if (m<0) return null; // invalid month name

          ArrayList list = new ArrayList();

          int len_month=lm(m,year);
          for (int d=1;d<=len_month;d++)
               list.add(len2(d)+"."+len2(m)+"."+year);
 
          return list;
         
     }
0
 
LVL 13

Expert Comment

by:Webstorm
ID: 12101284
private static ArrayList getDatum(String month, String year) {

should be:

private static ArrayList getDatum(String month, String s_year) {
    int year=Integer.parseInt(s_year);
 
0
 
LVL 37

Expert Comment

by:zzynx
ID: 12101485
Can you tell me what's wrong with my comment?
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
mockito example issue 8 72
even odd program using while loop 3 40
How to convert String matching to regex in java 4 32
eclipse apache tomcat admin console 52 97
An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
Viewers will learn about if statements in Java and their use The if statement: The condition required to create an if statement: Variations of if statements: An example using if statements:

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question