Condividi:        

suddividere un file di dati

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Anthony47, Triumph Of Steel, archimede

suddividere un file di dati

Postdi ventus85 » 20/08/07 18:17

Ho un file (simile ad un txt, cambia solo l'estensione) con dentro un dataset.
Sono 2310 istanze (o classi), ognuna composta da 19 numeri.
I 19 attributi sono divisi da virgole, mentre le istanze sono divise dal carattere invio.
Devo suddividere questo file in tre file da usare nel JavaNNS.
Per dividerli bisogna usare delle proporzioni del tipo 50% per il primo sottoinsieme e 25% per altri due sottoinsiemi
(ovvero devo creare tre file uno contenente il 50% delle istanze, gli altri il 25% delle istanze ciascuno) e le proporzioni devono essere mantenute anche all'interno, cioè ogni classe deve avere 50-25-25.
Volevo creare un programma che lo facesse da sè (visto che a mano è impossibile), in c oppure c++ o Java.
Mi potete dire come posso fare, che righe di codice usare? :?:
Mi date una mano?
Ditemi un po' come potrei fare, che funzioni usare, perchè a dividere questi dati non sono capace, avevo provato per esempio la fz. split in Java ma non ne sono venuta a capo.
Se non faccio questa suddivisione non posso andare avanti nel progetto, sono disperata... :cry: :cry: :cry:
Grazie davvero... ;)
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Sponsor
 

Postdi BianConiglio » 20/08/07 18:42

ma i file e' il risultato della serializzazione di un oggetto java?
BianConiglio
Utente Senior
 
Post: 4710
Iscritto il: 26/12/01 01:00
Località: Varese / Lugano

Postdi ventus85 » 21/08/07 08:14

BianConiglio ha scritto:ma i file e' il risultato della serializzazione di un oggetto java?


No, è un file di testo normale.
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 21/08/07 09:32

Volevo usare qualcosa come la fz. split in Java
Codice: Seleziona tutto
public class provasplit {
   public static void main(String[] args) {
      String[] diviso=null;
      String linea="prova,due,tre, ottanta e torre file";
      diviso=linea.split("o");
      for(int i = 0; i < diviso.length; i++)
      System.out.println(diviso[i]);
   }

}

In alternativa usando anche l'oggetto Token.
Codice: Seleziona tutto
import java.util.StringTokenizer;

public class provasplit {
   public static void main(String[] args) {
      String line = "prova,due,tre, ottanta e torre file, mannaggia torna";
      StringTokenizer st = new StringTokenizer(line,",");
      while(st.hasMoreTokens()) {
          String token = st.nextToken();
          System.out.println (token);
      }
   }
}

Oppure qualcosa in c come la fz. fgets
Codice: Seleziona tutto
#include<stdlib.h>
#include<stdio.h>

int main() {
  FILE *fil;
  char buffer[200];
  char *res;

  fil=fopen("nome_file", "r");
  if( fil ==NULL ) {
    perror("Errore in apertura del file");
    exit(1);
  }
  while (1) {
    res=fgets(buffer, 200, fil);
    /* cosa faccio delle righe lette? */
  }

  fclose(fil);

  return 0;
}

Ma non so gestite proprio la divisione, qualcosa del tipo prendi i primi 50% delle righe e buttari sul file uno, prendi i successivi 25% mettili sul file due e così via.
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 21/08/07 09:37

Comunque ora ci penso ancora un po'...
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi mrblue » 21/08/07 10:08

La cosa piu veloce ke mi viene in mente è leggere il file riga x riga e mettere le righe in una lista e poi lavorare sulla lista ke è sicuramente piu semplice ke sul file...
Per leggerlo riga x riga puoi usare la classe BufferedReader
Sbagliare è umano, ma per riuscire davvero a incasinare completamente le cose ci vuole un computer.
---------------------
http://mrblue73.blogspot.com/
mrblue
Utente Senior
 
Post: 364
Iscritto il: 22/10/01 01:00
Località: Roma

Postdi BianConiglio » 21/08/07 20:16

puoi fare in mille modi, son tutti semplici.. posta un pezzo del file di testo cosi mi rendo conto di cosa tu debba parsare
BianConiglio
Utente Senior
 
Post: 4710
Iscritto il: 26/12/01 01:00
Località: Varese / Lugano

Postdi ventus85 » 23/08/07 08:03

BianConiglio ha scritto:puoi fare in mille modi, son tutti semplici.. posta un pezzo del file di testo cosi mi rendo conto di cosa tu debba parsare


Ok...
Codice: Seleziona tutto
218.0,178.0,9,0.11111111,0.0,0.8333327,0.54772234,1.1111094,0.5443307,59.62963,52.444443,75.22222,51.22222,-21.555555,46.77778,-25.222221,75.22222,0.31899637,-2.0405545,6
113.0,130.0,9,0.0,0.0,0.27777776,0.25092423,0.33333328,0.3651483,0.8888889,0.0,2.5555556,0.11111111,-2.6666667,5.0,-2.3333333,2.5555556,1.0,-2.123254,3
202.0,41.0,9,0.0,0.0,0.9444478,0.7722018,1.111112,1.0255967,123.03704,111.888885,139.77779,117.44444,-33.444443,50.22222,-16.777779,139.77779,0.19934683,-2.2999177,2
32.0,173.0,9,0.0,0.0,1.7222217,1.7815932,9.0,6.749488,43.592594,39.555557,52.88889,38.333336,-12.111111,27.88889,-15.777778,52.88889,0.26691392,-1.9988575,6
61.0,197.0,9,0.0,0.0,1.4444441,1.5153533,2.6111107,1.9254634,49.592594,44.22222,61.555557,43.0,-16.11111,35.88889,-19.777779,61.555557,0.30292457,-2.0222743,6
149.0,185.0,9,0.0,0.0,1.5555553,1.0680546,3.0555553,1.9254627,49.333332,45.333332,59.555557,43.11111,-12.0,30.666666,-18.666666,59.555557,0.2758892,-1.9527698,6
197.0,229.0,9,0.0,0.0,1.3888885,1.5740727,1.1666662,0.5666664,17.74074,14.111111,17.88889,21.222221,-10.888889,0.44444445,10.444445,21.222221,0.3357168,2.651605,7
29.0,111.0,9,0.0,0.0,0.38888884,0.24074061,0.6111111,0.15185188,5.4074073,6.888889,6.3333335,3.0,4.4444447,2.7777777,-7.2222223,6.888889,0.56415343,-0.89785874,1
1.0,81.0,9,0.0,0.0,12.166667,267.45554,9.222222,205.36296,21.333334,14.0,30.555555,19.444445,-22.0,27.666666,-5.6666665,30.555555,0.5952822,-2.438409,3
69.0,85.0,9,0.11111111,0.0,3.1111114,8.207409,3.944444,9.440739,21.444445,20.444445,28.11111,15.777778,-3.0,20.0,-17.0,28.11111,0.43740398,-1.6598793,1
152.0,83.0,9,0.0,0.0,4.444444,1.3277657,0.94444436,0.6804135,26.518518,23.333334,33.22222,23.0,-9.555555,20.11111,-10.555555,33.22222,0.30741498,-2.0632424,4
248.0,153.0,9,0.0,0.0,0.2777778,0.062962964,0.11111113,0.029629637,0.37037036,0.0,1.1111112,0.0,-1.1111112,2.2222223,-1.1111112,1.1111112,0.8888889,-2.0943952,5
137.0,141.0,9,0.0,0.0,0.055555563,0.13608278,0.055555556,0.13608277,0.037037037,0.0,0.11111111,0.0,-0.11111111,0.22222222,-0.11111111,0.11111111,0.11111111,-2.0943952,5
86.0,197.0,9,0.11111111,0.11111111,1.611112,1.4516907,1.2777786,1.1038647,63.22222,56.22222,77.77778,55.666668,-21.0,43.666668,-22.666666,77.77778,0.28533262,-2.06802,6
220.0,220.0,9,0.11111111,0.0,2.277778,1.12963,2.2777777,4.151854,6.4444447,5.6666665,5.3333335,8.333334,-2.3333333,-3.3333333,5.6666665,8.333334,0.42735383,1.9843658,7
207.0,115.0,9,0.0,0.0,1.0555555,0.3296295,0.16666669,0.033333343,1.2222222,0.44444445,2.8888888,0.33333334,-2.3333333,5.0,-2.6666667,2.8888888,0.93333334,-2.0655363,5
6.0,51.0,9,0.0,0.0,1.6666666,1.9999989,1.611111,2.1074073,19.592592,18.777779,25.666666,14.333333,-2.4444444,18.222221,-15.777778,25.666666,0.44286063,-1.6812904,1
203.0,182.0,9,0.0,0.0,3.722222,2.576964,3.6111114,1.705112,54.925926,49.444443,68.111115,47.22222,-16.444445,39.555557,-23.11111,68.111115,0.3067216,-1.9803478,6
243.0,120.0,9,0.0,0.0,4.4444447,4.359749,1.5555547,1.8338387,47.851852,44.77778,56.333332,42.444443,-9.222222,25.444445,-16.222221,56.333332,0.2453213,-1.9107349,4
146.0,97.0,9,0.0,0.0,10.111111,4.597905,0.6111107,0.5741327,47.962963,46.0,54.333332,43.555557,-5.888889,19.11111,-13.222222,54.333332,0.19711515,-1.8407352,4
184.0,145.0,9,0.0,0.0,0.72222227,0.6116159,0.22222222,0.2721655,0.5555556,0.33333334,1.2222222,0.11111111,-0.6666667,2.0,-1.3333334,1.2222222,0.5277778,-1.9209436,5
178.0,128.0,9,0.0,0.0,0.44444433,0.34074068,0.88888866,0.2074075,5.9259257,7.888889,6.4444447,3.4444444,5.888889,1.5555556,-7.4444447,7.888889,0.56371254,-0.7213002,1
132.0,134.0,9,0.0,0.0,2.6666667,3.1555562,1.5,1.5444443,6.185185,2.2222223,11.444445,4.888889,-11.888889,15.777778,-3.8888888,11.444445,0.8339346,-2.3866115,3
83.0,28.0,9,0.0,0.0,0.3888893,0.13608134,0.88888675,0.45542085,112.96296,99.44444,131.11111,108.333336,-40.555557,54.444443,-13.888889,131.11111,0.24151142,-2.3878844,2
126.0,237.0,9,0.0,0.0,0.94444436,0.24074084,1.0000001,0.48888868,5.7777777,4.2222223,4.2222223,8.888889,-4.6666665,-4.6666665,9.333333,8.888889,0.5538119,2.0972314,7
225.0,58.0,9,0.0,0.0,0.3333335,0.42163706,0.4444445,0.34426522,8.333333,5.5555553,14.111111,5.3333335,-8.333333,17.333334,-9.0,14.111111,0.62222224,-2.0685637,5
14.0,120.0,9,0.0,0.0,0.3333333,0.13333331,0.44444442,0.29629624,1.5925926,0.0,3.8888888,0.8888889,-4.7777777,6.888889,-2.1111112,3.8888888,1.0,-2.3157208,3
5.0,210.0,9,0.0,0.11111111,2.1666672,1.6699982,4.444444,2.613356,51.296295,45.444443,64.333336,44.11111,-17.555555,39.11111,-21.555555,64.333336,0.3175664,-2.0208955,6
79.0,62.0,9,0.0,0.0,0.555556,0.3851839,0.88888675,0.60740507,110.18519,100.666664,127.111115,102.77778,-28.555555,50.77778,-22.222221,127.111115,0.20801263,-2.178149,2
18.0,83.0,9,0.0,0.11111111,6.1666665,9.988892,12.888889,28.785189,14.37037,9.0,22.666666,11.444445,-16.11111,24.88889,-8.777778,22.666666,0.6647845,-2.2742054,3
214.0,246.0,9,0.0,0.0,2.8333328,1.9177537,2.9999993,1.988857,17.518518,14.222222,15.444445,22.88889,-9.888889,-6.2222223,16.11111,22.88889,0.39154765,2.2328491,7
94.0,140.0,9,0.0,0.0,0.16666667,0.033333328,0.33333328,0.044444434,3.0370371,1.7777778,6.111111,1.2222222,-3.7777777,9.222222,-5.4444447,6.111111,0.79788357,-1.9857694,5
54.0,142.0,9,0.0,0.0,0.7222223,0.82775915,2.0,2.1081848,1.8148148,0.8888889,3.6666667,0.8888889,-2.7777777,5.5555553,-2.7777777,3.6666667,0.76944447,-2.0943952,5
107.0,146.0,9,0.0,0.0,1.888889,1.0074077,2.111111,1.3185171,21.37037,16.777779,29.666666,17.666668,-13.777778,24.88889,-11.111111,29.666666,0.43278608,-2.1649706,4
93.0,236.0,9,0.11111111,0.0,1.7777777,2.6962965,1.9999999,0.93333334,12.518518,9.555555,10.777778,17.222223,-8.888889,-5.2222223,14.111111,17.222223,0.44724658,2.2671974,7
245.0,249.0,9,0.0,0.0,2.0,1.2888895,1.4999999,0.61111146,14.740741,10.777778,15.333333,18.11111,-11.888889,1.7777778,10.111111,18.11111,0.40621215,2.7435553,7
48.0,173.0,9,0.0,0.0,1.1666666,1.0697874,1.4444447,1.6420407,19.222221,16.444445,16.444445,24.777779,-8.333333,-8.333333,16.666666,24.777779,0.34965578,2.0995574,7
239.0,122.0,9,0.0,0.0,0.27777776,0.06296293,0.33333334,0.17777774,5.5555553,7.0,6.6666665,3.0,4.3333335,3.3333333,-7.6666665,7.2222223,0.5813492,-0.95343477,1
184.0,145.0,9,0.0,0.0,0.9444445,0.49065363,1.7777778,0.93491936,3.4074075,2.3333335,5.7777777,2.1111112,-3.2222223,7.111111,-3.8888888,5.7777777,0.65661377,-2.0365057,5
109.0,146.0,9,0.0,0.0,0.055555556,0.13608277,0.055555556,0.13608277,0.037037037,0.0,0.11111111,0.0,-0.11111111,0.22222222,-0.11111111,0.11111111,0.11111111,-2.0943952,3
111.0,246.0,9,0.0,0.0,3.166667,2.0949678,5.833334,4.113663,25.88889,21.11111,22.444445,34.11111,-14.333333,-10.333333,24.666666,34.11111,0.38897294,2.2140112,7
155.0,40.0,9,0.0,0.0,1.888889,2.072751,0.05555554,0.13608274,1.2592592,1.2222222,1.5555556,1.0,-0.11111111,0.8888889,-0.7777778,1.5555556,0.11666667,-1.5707964,5
192.0,157.0,9,0.0,0.0,1.0555559,0.5074076,0.77777797,0.16296285,18.333334,13.888889,17.222223,23.88889,-13.333333,-3.3333333,16.666666,23.88889,0.41818407,2.4386153,7
209.0,249.0,9,0.0,0.0,2.4444444,3.6296306,2.777778,4.2074075,10.518518,7.5555553,8.111112,15.888889,-8.888889,-7.2222223,16.11111,15.888889,0.5333069,2.1567793,7
118.0,125.0,9,0.0,0.0,0.33333334,0.29814234,0.88888884,0.34426528,1.1481482,0.0,3.1111112,0.33333334,-3.4444444,5.888889,-2.4444444,3.1111112,1.0,-2.1756468,3
43.0,152.0,9,0.0,0.0,1.9444445,1.7074082,1.2222222,0.8296299,1.5185186,1.0,2.8888888,0.6666667,-1.5555556,4.111111,-2.5555556,2.8888888,0.64867723,-1.9332389,5
247.0,92.0,9,0.0,0.0,0.88888884,0.5185184,0.44444433,0.118518606,12.074074,7.5555553,20.555555,8.111112,-13.555555,25.444445,-11.888889,20.555555,0.6321268,-2.1378512,5
63.0,201.0,9,0.0,0.0,2.1111119,1.7341882,2.5000007,1.656637,61.62963,54.88889,76.44444,53.555557,-20.222221,44.444443,-24.222221,76.44444,0.29921305,-2.0341187,6
33.0,117.0,9,0.0,0.0,0.2777778,0.018518511,0.11111111,0.029629635,1.074074,0.0,3.1111112,0.11111111,-3.2222223,6.111111,-2.8888888,3.1111112,1.0,-2.132635,3
118.0,85.0,9,0.0,0.0,3.2777777,4.418521,2.277778,6.8185186,8.185185,3.5555556,14.888889,6.111111,-13.888889,20.11111,-6.2222223,14.888889,0.7741213,-2.3290927,3
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 23/08/07 12:23

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
FILE *fil;
char buf[200];
char *res;
char array[200];
int i=0;

fil=fopen("file.txt", "r");
if( fil==NULL ) {
perror("Errore in apertura del file");
exit(1);
}

while(1) {
res=fgets(buf, 200, fil);
if( res==NULL )
break;
array[i]=(char)buf;
}
fclose(fil);
system("PAUSE");
return 0;
}


Usare qualcosa del genere, poi creare un nuovo file e buttarci i primi n/2 (dove n è il numero di istanze) elementi dell'array?
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 23/08/07 12:26

Uhmmm...non mi convince...
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi mrblue » 23/08/07 13:39

questo è un esempio dummy su come potresti iniziare...
ovviamente hai il problema della divisibilta dell'insieme nelle tue percentuali...
a menoche te non possa dividere anche il contenuto delle classi

Codice: Seleziona tutto
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;

public class Partition {
   private File fileOrig=null;
   private ArrayList<String> listClassi=null;
   public int[] splitSize={50,25,25};
   
   public static void  main(String[]args)
   {
      Partition nnp=new Partition(new File("Document.ini"));
      nnp.execute();
   }
   
   public Partition(File fileOrig) {
      super();
      this.fileOrig = fileOrig;
      this.listClassi = new ArrayList<String>();
   }
   
   public void execute()
   {
      try {
         readFile();
         int posInitial=0;
         
         for (int i : splitSize) {
            int cicle=0;
            File file=new File("file_"+posInitial);
            BufferedWriter out = new BufferedWriter(new FileWriter(file));
              int size=listClassi.size()*i/100;
                          
            while(cicle<size)
            {
               out.write(listClassi.get(posInitial+(cicle++))+"\n");
            }
            out.close();
            posInitial+=size;

         }
      } catch (Exception e) {
         // TODO Blocco catch generato automaticamente
         e.printStackTrace();
      }
   }
   
   private void readFile() throws Exception
   {      
        BufferedReader rd = new BufferedReader(new FileReader(fileOrig));
        String line = null;
        while ((line = rd.readLine()) != null) {
           listClassi.add(line);
        }   
   }
}
Sbagliare è umano, ma per riuscire davvero a incasinare completamente le cose ci vuole un computer.
---------------------
http://mrblue73.blogspot.com/
mrblue
Utente Senior
 
Post: 364
Iscritto il: 22/10/01 01:00
Località: Roma

Postdi ventus85 » 23/08/07 18:34

Ok...ora lo guardo, grazie...
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 29/08/07 15:14

Gli ho datto un'occhiata, cerco di modificarlo, vi farò sapere x bene presto...grazie!
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 03/09/07 20:15

Praticamente il codice inserito da mrblue butta su un Array le righe del file letto, ogni riga è un elemento dell'array...
Legge tutto il file.
Ora io dovrei prendere i primi 50% degli elementi (per ottenere la lunghezza dell'array credo ci sia un metodo apposito tipo getSize, guarderò un po'...non ci credo non mi ricordo più il Java... :( ) dell'array e buttarli su un nuovo file e poi farlo anche con le altre due parti...
Domani mattina ci provo, vi faccio sapere...
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 04/09/07 10:12

Il metodo per restituire il numero degli elementi è size(), così per stamparlo a videro uso System.out.println(listClassi.size());
Le righe
Codice: Seleziona tutto
for (int i : splitSize) {
            int cicle=0;
            File file=new File("file_"+posInitial);
            BufferedWriter out = new BufferedWriter(new FileWriter(filescrittura.txt));
              int size=listClassi.size()*i/100;
     

se ho capito bene ti salvano in un file denominato file_ seguito da un numero una parte dell'array, cioè da uno fino all'elemento dell'array spliSize (o meglio la posizione).
Uhm...ora provo a sistemarlo con un file con pochi dati, sennò non ci si capisce nulla...
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 04/09/07 10:19

Vai ci sono... :lol: 8)
1) legge i dati da un file
2) li salva su un ArrayList, ogni elemento dell'array è un rigo del file
3) butta i dati dell'ArrayList su dei file, prendendoli suddivisi secondo la dimensione data dall'array splitSize.
Ok, ci sono ragazzi... :) :lol:
Grazie! :)
Vediamo se lo posso ampliare (per quello che mi serviva non ci sono grandi modifiche da fare), così vi posto il codice modificato.
Se mai ce ne sarà occasione vi offro un caffè! ;)
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi ventus85 » 05/09/07 15:37

E se volessi invece portare su un nuovo file tutti i valori dei primi attributi (oppure il 3° valore di tutti o qualsiasi altro) dei dati?
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi BianConiglio » 05/09/07 16:04

un for, un if e un BufferedWriter :D
BianConiglio
Utente Senior
 
Post: 4710
Iscritto il: 26/12/01 01:00
Località: Varese / Lugano

Postdi ventus85 » 06/09/07 15:52

BianConiglio ha scritto:un for, un if e un BufferedWriter :D
:?:
Io voglio per esempio
Codice: Seleziona tutto
218.0,178.0,9,0.11111111,0.0,0.8333327,0.54772234,1.1111094,0.5443307,59.62963,52.444443,75.22222,51.22222,-21.555555,46.77778,-25.222221,75.22222,0.31899637,-2.0405545,6
113.0,130.0,9,0.0,0.0,0.27777776,0.25092423,0.33333328,0.3651483,0.8888889,0.0,2.5555556,0.11111111,-2.6666667,5.0,-2.3333333,2.5555556,1.0,-2.123254,3
202.0,41.0,9,0.0,0.0,0.9444478,0.7722018,1.111112,1.0255967,123.03704,111.888885,139.77779,117.44444,-33.444443,50.22222,-16.777779,139.77779,0.19934683,-2.2999177,2

il 178,il130,il41,il173 e così via, ovvero tutti i secondi valori di ogni classe (ogni classe ha 19 attributi ed io voglio estrarre il secondo attributo di ogni classe)...
Born in the wind, born to be wild!
Avatar utente
ventus85
Utente Senior
 
Post: 327
Iscritto il: 05/07/06 09:36

Postdi Jonlord » 06/09/07 17:40

Make it abstract
Codice: Seleziona tutto
public void printFiltering(String[] array, int position) {
// position è la posizione del dato cercato
// se position = 1 cerchiamo il primo campo di ogni riga
for (int i = 0 ; i < array.length() ; i++) {
  System.out.println(getNthElement(array[i], position));
 }
}


public String getNthElement(String line, int position) {
//codice che splitta una String ad ogni virgola "," e restituisce
//il valore chiesto (il 'position-esimo elemento')
}
(perdonate errori)

Però manca ancora il pezzo di codice che prende ina Stringa e la splitta ad ogni "," (virgola) restituendo la Xesima positione
Jonlord
Utente Senior
 
Post: 331
Iscritto il: 17/11/02 15:26
Località: Lugano (Svizzera)

Prossimo

Torna a Programmazione


Topic correlati a "suddividere un file di dati":


Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti