Visit Our UNIX and Linux User Community


Link array to class java


 
Thread Tools Search this Thread
Top Forums Programming Link array to class java
# 1  
Old 09-28-2011
Link array to class java

Hi, I need help to Link array from one class to another class

Firstly CSVParser Class what it did is load csv file and store into array
Secondly WarehouseItem where each record is store

How can I get a list of array that I load to CSVParser Class and store them to WarehouseItem and display result

Here is my code:

CSVParser Class(CSVParser.java)
Code:
import io.*;
import java.io.File;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileInputStream;
import java.util.StringTokenizer;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.ArrayList;

public class CSVParser 
{
   private String filename;

	public CSVParser(String inFilename )
	{
		//setFilename( filename );
	}
	public void setFileName( String inFilename )
	{
		this.filename = inFilename;
	}
	public String getFilename()
	{
     return filename;
	}
   private void readFileExample(String inFilename) 
    {
		ArrayList WarehouseItem = new ArrayList();

     FileInputStream fileStrm = null;
     InputStreamReader rdr;
     BufferedReader bufRdr;
     int lineNum;
     String line;
     try 
        {
     fileStrm = new FileInputStream(inFilename); 
     rdr = new InputStreamReader(fileStrm); 
     bufRdr = new BufferedReader(rdr);
     lineNum = 0;
     line = bufRdr.readLine();
     while (line != null) 
      {
        lineNum++;
        processLine(line);
        line = bufRdr.readLine();
      }
            if ( lineNum > 1000000)
            {
                System.out.print(" Error, The record cannot be more than 1 millon");
            }
     fileStrm.close();
    }
    catch (IOException e) 
        {
           if (fileStrm != null) 
           {
            try { fileStrm.close(); 
            } catch (IOException ex2) { }
           }
        System.out.println("Error in file processing: " + e.getMessage());
       }   
     }
    private void processLine(String csvRow) 
    {
        StringTokenizer strTok;
        int key, weightLnKg;
        String brand, model;
        double price;
        strTok = new StringTokenizer(csvRow);
        try 
        {
            key = Integer.parseInt(strTok.nextToken());
            brand = strTok.nextToken();
            model = strTok.nextToken();
            weightLnKg = Integer.valueOf(strTok.nextToken());
            price = Double.valueOf(strTok.nextToken());
            System.out.println(" key:" + key + "brand:" + brand + "model:" + model + 
                               "weight:" + weightLnKg + "price:" + price);
        }
        catch (Exception e) 
        {
            throw new IllegalStateException("CSV row had invalid format (too few columns?)");
        }
    }
		//public String toString()
		//{
		//}
    		public static void main(String[] args)
    		{
			String filename = "test.csv";
			CSVParser csv = new CSVParser(filename);
			//csv.readFileExample();
		   }               
}

Here is my WarehouseItem Class (WarehouseItem.java)
Code:
import io.*;
public class WarehouseItem
{
	private int key;
	private String brand;
	private String model;
	private int weightKg;
	private double price;

	public WarehouseItem( int inkey, String inBrand, String inModel, int inWeightKg, double inPrice)
	{
		setKey( key );
		setBrand( brand );
		setModel( model );
		setWeightKg( weightKg );
		setPrice( price );
    
	}
	public void setKey( int inKey )
	{
		key = inKey;
	}
	public int getkey()
	{
		return key;
	}
	public void setBrand( String inBrand )
	{
		brand = inBrand;
	}
	public String getBrand()
	{
		return brand;
	}
	public void setModel( String inModel )
	{
		model = inModel;
	}
	public String getModel()
	{
		return model;
	}
	public void setWeightKg( int inWeightKg )
	{
		  if (Math.floor(weightKg)!= weightKg) 
        {
           throw new IllegalArgumentException("The Weight is not integer");
        }
			else
				{
					weightKg = inWeightKg;
				}
	}
	public int getWeightKg()
	{
		return weightKg;
	}
	public void setPrice( double inPrice )
	{
		
        if (Math.round(price) != price) 
        {
            throw new IllegalArgumentException("The Weight is not double");
        }
			else
 			{
				price = inPrice;
			}
	}
	public double getPrice()
	{
		return price;
	}
}


Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Programming

Array initialization inside class in C++

const int VALUES = {7,4,2,1,0}; //or int VALUES = {7,4,2,1,0};this statement inside a class definition gives error. Why? (3 Replies)
Discussion started by: milhan
3 Replies

2. Programming

Simplify setter and getter of java class

I am trying to verify my understanding on setter and getter on java class with this example: //MaximumFinder2.java import java.util.Scanner; public class MaximumFinder2 { public static void main (String args) { Scanner input = new Scanner(System.in); ... (6 Replies)
Discussion started by: yifangt
6 Replies

3. Programming

Java Date Class

I am looking at a website to learn Java and this is one of the exercises. Write a program that will show different time and date information based on what number you send it. The codes are: 0 - number of milliseconds since January 1, 1970 1 - number of seconds since January 1, 1970 2 -... (6 Replies)
Discussion started by: totoro125
6 Replies

4. Programming

Help in JAVA main and class

Is anyone know how to write a class in separate file? While method does it needs to be contained in a printwriter class? Can I have the format of the printwriter class as a reference? Thanks a lot. (1 Reply)
Discussion started by: eel
1 Replies

5. Programming

how abstract class differs in Java and C++?

hello all, i want to know if there is any difference in working and syntax declaration of abstract class in Java and C++. (1 Reply)
Discussion started by: haravivar
1 Replies

6. Fedora

Help, how to dynamicly load java class

Hi, everyone: I'm trying to connect to DB using JDBC on fedora. I have successfully installed jdk and it's ok to run common java program. The environment variables: JAVA_HOME=/installed/mycoy/jdk1.6.0 PATH=$JAVA_HOME/bin:$PATH... (3 Replies)
Discussion started by: mycoy
3 Replies

7. Shell Programming and Scripting

call constructor of java class in script

Hi, Is it possible to call the constructur of a java class in a shell script? I know you can call static methods, but can you also call the constructor? tnx. (1 Reply)
Discussion started by: thebladerunner
1 Replies

8. Solaris

Setting link to newly installed Java version

Hi, I have Solaris 8 wih Java 1.2.2 as default. I just upgraded it to Java 2 version 1.4. But when I do "java -version: I get following: "Java version "1.2.2" Solaris VM (build Solaris_JDK_1.2.2_05a, native threads, sunjwit) How would I make solaris to look at my new java? If I have to... (4 Replies)
Discussion started by: harjitsingh
4 Replies

9. Shell Programming and Scripting

Running java class with a cron

Hello everybody, I have a problem about running a java class with a cron : I have Cron.txt file which has : 0,5,10,15,20,25,30,35,40,45,50,55 * * * * CronJava.txt I have CronJava.txt wihich has : cd ias/j2ee/SapAktarim/applications/SapAktarim/SapAktarim/WEB-INF/classes/;java -classpath... (3 Replies)
Discussion started by: UBGandalf
3 Replies

Featured Tech Videos