Beh devi solo togliere l'indicatore static nell'intestazione del metodo e poi quando lo vuoi usare devi prima creare un oggetti del tipo della classe che lo contiene, ad esempio in un'altra classe in cui devo usare il metodo dovresti fare: (tutto all'interno del main)
codice:
addtodb ogg = new addtodb();
ogg.fileLength(f);
Nel tuo caso mi pare di capire che hai tutto nella stessa classe...non so quanto può essere utile una cosa del genere...comunque ti resterebbe una cosa così :master:
codice:
import java.util.*;
import java.io.*;
public class addtodb {
/**
* @param args
*/
public int fileLenght(File f)throws IOException {
int row = 0; //inizializzo il numero di righe
int columns = 0; //inizializzo il numero di colonne
FileReader file = new FileReader(f);
BufferedReader br = new BufferedReader(file);
String line = br.readLine();
StringTokenizer st = new StringTokenizer(line);
System.out.println("Il numero di colonne e' :" + st.countTokens());
while (line != null) {
row++;
line = br.readLine();
}
System.out.println("Il numero di righe e' :" + row);
return 0;
}
public static void main(String[] args)throws IOException {
addtodb ogg = new addtodb();
File f;
f=new File("Affymetrix_dati.txt");
try{
System.out.println(ogg.fileLenght(f) );
}
catch(IOException e){
System.out.println(e.getMessage());
}
}
}
Il problema è che ti da questo errore perchè in un metodo static (cioè il main) puoi usare solo metodi o variabili che sono a loro volta static. Se dichiari una variabile in un metodo static viene implicitamente creata anchessa static anche se non lo scrivi esplicitamente, questo però non vale per i metodi e le variabili globali che crei fuori dal metodo.
Se non ti crea problemi io lascerei il metodo static...
Ciao.