2015-11-25 3 views
0

Я должен написать программу, которая открывает файл excel, считывает числа в файле, умножает их на 9.8 и показывает ответ в другом excel gile.Не удается открыть файлы с помощью c

Я написал это, и у меня не было ошибок в компиляторе, но когда я его запустил, он не открывает никаких файлов. Как мне открыть файлы?

#include <stdio.h> 

int main() { 
    FILE *archivo; 
    FILE *archivoSalida; 

    int masa; 
    float peso; 

    archivo = fopen("C:/Users/nacho/Documents/UNAM/Informatica/proyecto/archivoEntrada.txt", "r"); 
    archivoSalida = fopen("C:/Users/nacho/Documents/UNAM/Informatica/proyecto/archivoSalida.txt", "r"); 

    if (archivo != NULL) 
    { 
     printf("The file was opened succesully"); 

     while (fscanf(archivo,"%d", &masa)!= EOF) 
     { 
      peso=masa*9.81; 
      fprintf(archivoSalida, "%f\n", peso); 
     } 
    } 
    else 
    { 
     printf ("Error"); 
    } 


    fclose(archivo); 
    fclose(archivoSalida); 

    return 0; 
} 
+0

Относительно: http://stackoverflow.com/questions/33948540/write-in-excel-file-with-c – pnuts

ответ

1

Ваш файл номинированы на archivoSalida открыт в режиме чтения ('r').

Вы также должны проверить коды возврата функций чтения/записи, чтобы убедиться, что все происходит по мере необходимости.

2
  1. Вы хотите fopen выходной файл ("archivoSalida") с режимом "w" (для записи) вместо "r" (для чтения). См. http://pubs.opengroup.org/onlinepubs/009695399/functions/fopen.html.

  2. Вы проверяете, можно ли открыть входной файл (if (archivo != NULL)). Почему бы вам не сделать то же самое для выходного файла?

  3. При ошибке вы должны вывести , который произошел с errno, например. через perror(...). Это должно помочь найти фактическую проблему.

0

Имена файлов выглядят как Windows-ish. Возможно ли, что все косые черты (/), которые у вас есть в обоих именах файлов, действительно должны быть обратными чертами (\)?

+0

Насколько я знаю, любая реализация стандартной библиотеки C для Windows очень снисходительна относительно направления косых черт. –

+0

Это сделало бы жизнь намного легче, если это так. Весь мой C-код на linux, поэтому я не был уверен. –

Смежные вопросы