Solved

I need a transform an int to a Date format to create a High-Low JFreeChart

Posted on 2006-10-26
4
268 Views
Last Modified: 2010-05-18
Hi experts,


I am creating a new class to create stock charts.

My problem comes when I am trying to create a dataset from the class  DefaultHighLowDataset.
I need a Date format in the constructor but my date data is express as an int in my list.
What can I do ?

private void execute(){

    /**
     * Loads Daily Prices
     */
    price = conf.getPrices(symbol,pointer);        
    if (price.getSize()==0){
        System.out.println("No quotes founds for symbol "+symbol+", system can't works.");
        System.exit(1);
    }

 high = new double[price.getSize()];
 low  = new double[price.getSize()];
 close = new double[price.getSize()];
 open = new double[price.getSize()];
 date = new int[price.getSize()];    
 volume = new double[price.getSize()];  
   
   
for (int i=price.getFirst();i<price.getLast()+1;i++){
    high[i] = price.getHigh(i);
    //System.out.println(price.getHigh(i));
    low[i] = price.getLow(i);
    //System.out.println(price.getLow(i));
    close[i] = price.getClose(i);
    //System.out.println(price.getClose(i));
    open[i] = price.getOpen(i);
    //System.out.println(price.getOpen(i));
    date[i] = price.getDate(i);
    //System.out.println(price.getDate(i));
    volume[1] = price.getVolume(i);
}
      
      

final DefaultHighLowDataset dataset = new DefaultHighLowDataset("Chart for "+symbol,date,high,low,open,close,volume);
0
Comment
Question by:blarouche
  • 2
  • 2
4 Comments
 
LVL 92

Expert Comment

by:objects
ID: 17811520
depends how your int is storing the date :)
if its using something like 20061206, then use a SimpleDateFormat to parse it (after converting it to a string)
http://javaalmanac.com/egs/java.text/ParseDate.html
0
 

Author Comment

by:blarouche
ID: 17811878
My date is stored as yyyymmdd.

Now I have a list of int :

for (int i=price.getFirst();i<price.getLast()+1;i++){
date[i] = price.getDate(i);
}

How do I transform this list of int into Date format. Another loop ?




0
 
LVL 92

Accepted Solution

by:
objects earned 250 total points
ID: 17811958
DateFormat sdf = new SimpleDateFormat("yyyyMMdd");
Date d = sdf.parse(Integer.toString(i));
0
 

Author Comment

by:blarouche
ID: 17812111
Excellent

Thank you objects
0

Featured Post

ScreenConnect 6.0 Free Trial

At ScreenConnect, partner feedback doesn't fall on deaf ears. We collected partner suggestions off of their virtual wish list and transformed them into one game-changing release: ScreenConnect 6.0. Explore all of the extras and enhancements for yourself!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
How to parse custom JSON to POJO java 4 74
Java JRE greater than 1.6 5 63
null output 3 25
Facing this issue for maven proxy setting 2 13
For customizing the look of your lightweight component and making it look opaque like it was made of plastic.  This tip assumes your component to be of rectangular shape and completely opaque.   (CODE)
Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
Viewers learn how to read error messages and identify possible mistakes that could cause hours of frustration. Coding is as much about debugging your code as it is about writing it. Define Error Message: Line Numbers: Type of Error: Break Down…
The viewer will learn how to implement Singleton Design Pattern in Java.

821 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