Save changes into SD

This one is better, but still not works...

#include <String.h>
#include <SD.h>

int CS=53;
String dataString;
File dataFile;

int i=1;

unsigned long dato;
unsigned long user[100];

void setup(){
  Serial.begin(115200);
  Serial.println("Initiating SD");
  pinMode(CS, OUTPUT);
  if(!SD.begin(CS)){
    Serial.println("SD failed");
    return;
  }
  Serial.println("SD OK");
  openSD();
}
  
void openSD(){
  Serial.println("Reading SD...");
  dato=0;
  dataFile=SD.open("user.txt",FILE_READ);
  readSD();
}

void readSD(){
    while (dataFile.available() && dataFile.peek() != '\n'){
      Serial.write(dataFile.read());
      delay(50);
    }
    asignauser();
}
    
void asignauser(){
    if(i<=4){
      user[i]=dataFile.read();
      Serial.print("The user ");
      Serial.print(i);
      Serial.print(" is:");
      Serial.println(user[i]);
      i++;
      readSD();
    }
}

The serial returns me this:

Initiating SD
SD OK
Reading SD...
67202 The user 1 is:10
62601 The user 2 is:10
60920 The user 3 is:10
61014 The user 4 is:4294967295[/b]

Obviously it hast to be --> user 1 is:67202...etc