read int/long from sd card

thanks to have clear me about the process...
my skills are limited and need some help. have few questions...

if i have understand the process, the code seems to this :
void loop()
{
File dataFile = SD.open ("testfile.txt", FILE_READ);
if (dataFile)

{
int c[20] ; // define an array, value are between 0/999940
int i;
for (i = 0 ; i< 20; i++); // write with index on array
c = dataFile.read();

  • if ( c == '\0' )*

  • {*

  • //serial_data = atol(c);*

  • serial_data = "";*

  • Serial.println (serial_data);*

  • Serial.println (c[20]);*

  • break;*

  • }*
    but i have error on serial_data : invalid conversion from 'const char' to 'long int'
    I have try some stuff but no result.
    how i can do for convert in right format ?
    and the return function is there good and on good place ? I have ad it for stop 'i' increment and restart it at the next frame
    else, is it normal if I have nothing write on serial monitor if I print c[20] ?
    on my monitor wind i have this :
    InitInitializing SD card...card Ready
    reading file
    but nothing more...
    thanks a lot for your help
    o_o