risolto tutto ok
codice:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.StringTokenizer;
import java.util.*;
public class princ {
private static String fileName = "Dato2.txt";
private String geneid=null;
double[] values=new double[5];
private static int row=0;
private static int numberOfNumericColumns=0;
private static int col=0;
String[]intest;
private ArrayList rows = new ArrayList();
Head h;
Riga r;
//String igen="";
public boolean insRighe(Riga nuovo){
return rows.add(nuovo);
}
public List stampaRows(){
return rows;}
public Head stampaHead(){
return h;}
public void carica()throws IOException{
FileReader reader=new FileReader(fileName);
BufferedReader br = new BufferedReader(reader);
String line = null;
while ((line = br.readLine()) != null) {
line = line.replace (',', '.');
if(row==0){
StringTokenizer st = new StringTokenizer(line);
numberOfNumericColumns = (st.countTokens()-1);
col=(numberOfNumericColumns+1);
intest=new String[col];
int io=0;
while(st.hasMoreTokens()){
String aapp=st.nextToken();
if(aapp.compareTo("")!=0)
{intest[io] = aapp;
io++;
}
/* for (int i=0;i<=col;i++) {
if(st.nextToken().compareTo("")!=0)
{intest[i] = st.nextToken();
i++;}*/
}
System.out.println("intest");
for(int w=0;w<=intest.length-1;w++){
System.out.println(w+" "+intest[w]);
}
System.out.println("FINE intest");
h=new Head(intest);//crei l'oggetto head
String []qa=h.getHvalues();
String asd="";
for(int i=0;i<=qa.length-1;i++){
asd=asd.concat(qa[i]+" ");
}System.out.println("head "+asd);//stampo contenuto el head
}
else {
StringTokenizer sta = new StringTokenizer(line);
int z=0;
while (sta.hasMoreTokens()) {
String app=sta.nextToken();
if (app.contains("_")){
geneid= app;
System.out.println("geneid "+geneid);
}else
{
values[z]=Double.parseDouble(app);
z++;}
}
System.out.println("val");
for(int w=0;w<=values.length-1;w++){
System.out.println(w+" "+values[w]);
}
System.out.println("FINE val");
r=new Riga(geneid,values); //crei l'oggetto riga
//stampa il contenuto dell'oggetto riga
System.out.println("riga");
System.out.println(r.getgeneid());
double[] valus=r.getvalues();
for(int e=0;e<=valus.length-1;e++){
System.out.println(valus[e]);}
insRighe(r); //aggiungi
}
row++;
}
}
public static void main(String[] args) throws IOException {
princ p=new princ();
p.carica();
}
}