Uso dell'istruzione SPLIT -

Dopo aver superato grosse difficoltà di programmazione in poco tempo, mi sono bloccato probabilmente per qualche banalità nell'uso del comando SPLIT .

il mio problema è il seguente: ho una serie di dati salvati in un array del seguente tipo:

-52 -130 206 -202 -52 -59 -81 -70 22 50 174 -48 238 106 133 19 102 170 36 87 -18 -65 -190 -186 290 -65 -60 99 -41 9 -154 -93 -30 -204 23 -125 -190 -116 -26 -122 -44 38

salvati in un file DATI.TXT

Nelle operazioni fi caricamento del file commetto qualche errore, quale è la procedura più veloce per creare un arrai multipo tipo datixyz[][][] oppure in tre array tipo: dato x[] dato y[] dato[z] ????

in pratica quello che si faceva in VB

open "dati.txt" for input as #1 for i =1 to dati input#1; x(i),y(i),z(i) next i close #1

un ringraziamento anticipato a tutti coloro che mi potranno aiutare. saluti angelo

uguale identico, solo che i comandi li riscrivi in C.... o meglio arduiniano :D

//open "dati.txt" for input as #1 diventa:
File myFile; //contiene il descrittore del file, ovvero un po' di info utili, come dove siamo arrivati a leggerlo, la dimensione, etc..
SD.open("dati.txt"); //non mettere niente oltre al nome del file vuol dire lettura, altrimenti fai SD.open("test.txt", FILE_WRITE);

if (myFile) {//controlla che il file esista, controllo che tu non fai
  //for i =1 to dati diventa:
  int i=0; //gli array in C e il 99% dei linguaggi iniziano da 0
  while (myFile.available()) {
    //input#1; x(i),y(i),z(i) diventa:
    x[i] = leggiIntero();
    y[i] = leggiIntero();
    z[i] = leggiIntero();
  }
  //close #1 diventa:
  myFile.close();
}else{
  Serial.println("error opening file");
}

ATTENZIONE: leggiIntero è una funzione che devi scrivere tu. Da file tu stai leggendo UN CARATTERE, quindi dovrai leggere i caratteri fino allo spazio " " o al a capo '\n', poi con atoi trasformi la stringa che hai letto in numero