Loading Data in separate class

Discussion in 'Java' started by sav, Jul 12, 2007.

  1. sav

    sav Guest

    Hi everyone, i am having a little trouble, i am relatively new to java
    and I am having difficulty with a little methodology.

    I am using the java excel api to import some data from excel into a
    routine for some data analysis. Below is a section of the code which
    at the moment imports the data into java.


    //import java.io.File;
    //import java.io.FileInputStream;

    //import jxl.Cell;
    //import jxl.Sheet;
    //import jxl.Workbook;


    //javac -classpath c:\jexcelapi\jxl.jar;. JET2.java
    //java -classpath c:\jexcelapi\jxl.jar;. JET2
    //java -Xms10m -Xmx100m -classpath jxl.jar spreadsheet.xls

    //java -Xms100m -Xmx200m -classpath c:\jexcelapi\jxl.jar;. JET2

    import java.io.File;
    import java.util.Date;
    import jxl.*;

    public class JET2 {

    public static void main (String[] args){
    Workbook workbook;
    try {

    workbook = Workbook.getWorkbook(new File("c:\\Docs_2\\Dad.xls"));

    double stringa1 = 0 ;
    double stringa2 = 0 ;

    Sheet sheet1 = workbook.getSheet(0);
    Sheet sheet2 = workbook.getSheet(0);

    Cell a1 = sheet1.getCell(1,1);
    Cell a2 = sheet2.getCell(0,5);

    if (a1.getType() == CellType.NUMBER)
    {
    NumberCell fc1 = (NumberCell)a1;
    stringa1 = fc1.getValue();
    }
    if (a2.getType() == CellType.NUMBER)
    {
    NumberCell fc2 = (NumberCell)a2;
    stringa2 = fc2.getValue();
    }
    //String stringa1 = a1.getContents();
    //String stringa2 = a2.getContents();

    workbook.close();

    }// End try

    catch (Exception e){

    System.out.println("Exception thrown: "+ e);

    }// End catch

    }// End Main
    }// End class Jet


    Now this portion works fine, however, I want to place the import code
    section into a class or a method on its own, for a couple of reasons,
    its cleaner and the routine is quite lengthy and i dont want to have a
    cluttered piece of code. How do i place the code into a section on its
    own that can be called simply by using something like

    public class JET2 {

    public static void main (String[] args){

    Import data ......(utilising the above code to import data from excel)

    Do stuff with data.........(data manipulation)

    }// End Main
    }// End class Jet

    I seem to misunderstanding something very basic or can this not be
    done?
    sav, Jul 12, 2007
    #1
    1. Advertising

  2. sav

    Jeff Higgins Guest

    Here's one way

    public class JET2
    {
    public static void main(String[] args)
    {
    processWorkbook(fetchWorkbook(args[0]));
    }

    public static void processWorkbook(Workbook workbook)
    {
    double stringa1 = 0;
    double stringa2 = 0;

    Sheet sheet1 = workbook.getSheet(0);
    Sheet sheet2 = workbook.getSheet(0);

    Cell a1 = sheet1.getCell(1, 1);
    Cell a2 = sheet2.getCell(0, 5);

    if (a1.getType() == CellType.NUMBER)
    {
    NumberCell fc1 = (NumberCell) a1;
    stringa1 = fc1.getValue();
    }
    if (a2.getType() == CellType.NUMBER)
    {
    NumberCell fc2 = (NumberCell) a2;
    stringa2 = fc2.getValue();
    }
    workbook.close();
    }

    public static Workbook fetchWorkbook(String fileName)
    {
    Workbook workbook = null;
    try
    {
    workbook = Workbook.getWorkbook(new File(fileName));
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }
    return workbook;
    }
    }
    Jeff Higgins, Jul 12, 2007
    #2
    1. Advertising

  3. sav

    sav Guest

    On 12 Jul, 21:17, "Jeff Higgins" <> wrote:
    > Here's one way
    >
    > public class JET2
    > {
    > public static void main(String[] args)
    > {
    > processWorkbook(fetchWorkbook(args[0]));
    > }
    >
    > public static void processWorkbook(Workbook workbook)
    > {
    > double stringa1 = 0;
    > double stringa2 = 0;
    >
    > Sheet sheet1 = workbook.getSheet(0);
    > Sheet sheet2 = workbook.getSheet(0);
    >
    > Cell a1 = sheet1.getCell(1, 1);
    > Cell a2 = sheet2.getCell(0, 5);
    >
    > if (a1.getType() == CellType.NUMBER)
    > {
    > NumberCell fc1 = (NumberCell) a1;
    > stringa1 = fc1.getValue();
    > }
    > if (a2.getType() == CellType.NUMBER)
    > {
    > NumberCell fc2 = (NumberCell) a2;
    > stringa2 = fc2.getValue();
    > }
    > workbook.close();
    > }
    >
    > public static Workbook fetchWorkbook(String fileName)
    > {
    > Workbook workbook = null;
    > try
    > {
    > workbook = Workbook.getWorkbook(new File(fileName));
    > }
    > catch (Exception e)
    > {
    > e.printStackTrace();
    > }
    > return workbook;
    > }
    >
    > }


    Jeff thanks a bunch that is just the thing i was trying to achieve,
    many thanks
    sav, Jul 12, 2007
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. EvgueniB
    Replies:
    1
    Views:
    616
    Anthony Borla
    Dec 15, 2003
  2. Ravikumar Eswaran

    Loading second applet using separate JVM.

    Ravikumar Eswaran, Aug 1, 2004, in forum: Java
    Replies:
    1
    Views:
    785
    Andrew Thompson
    Aug 3, 2004
  3. Frank Fredstone
    Replies:
    1
    Views:
    430
    Jean-Francois Briere
    Jun 27, 2006
  4. Edwin Knoppert
    Replies:
    2
    Views:
    364
    Ray Booysen
    Aug 4, 2006
  5. Immortal Nephi
    Replies:
    12
    Views:
    876
    Paul Bibbings
    Jul 30, 2010
Loading...

Share This Page