Lettura file e utilizzo del valore all'interno

di il
9 risposte

Lettura file e utilizzo del valore all'interno

Ciao ragazzi, è la prima volta che scrivo in questo forum..
vi pongo subito il mio quesito.. è possibile usando il linguaggio C leggere il contenuto di un file, dove è contenuto un numero es. ("12" contenuto nel file.txt) e usare questo numero come intero per svoglere una funzione? es a=12 b=(altro numero prelevato da un altro file) -> a-b=?
grazie in anticipo per le risposte!

9 Risposte

  • Re: Lettura file e utilizzo del valore all'interno

    SI. Vedi le funzioni fopen, fgets, atoi, fclose ecc.
  • Re: Lettura file e utilizzo del valore all'interno

    Cioè apro il file con fopen, lo leggo con fgets, converto la stringa contenuta nel file letto in int con atoi, e dopodiche lo chiudo con fopen.. giusto?
  • Re: Lettura file e utilizzo del valore all'interno

    Perche non provi invece di indovinare? Le funzioni li ho messi in quell'ordine per una ragione
  • Re: Lettura file e utilizzo del valore all'interno

    Simpatico.. non so scrivere un programma in 5 secondi..
    comunque ci sto provando.. ti posto quello che ho scritto fino ad ora..
    http://pastebin.com/J1A0YPv
    dimmi se sto facendo bene
  • Re: Lettura file e utilizzo del valore all'interno

    Non so cosa stai facendo con tutte ste variabili ma ci sono degli errori nel tuo listato.
    Controlla riga 14, riga 18, riga 29.
    Nella riga 35 stai aprendo lo stesso file già aperto in precendenza nella riga 20.
    Ecco un esempio della lettura. Io non so cosa stai cercando di fare con tutti quei file aperti.
    
    #include<stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    	FILE *input1 = NULL;
    	FILE *input2 = NULL;
    	int a = 0;
    	int b = 0;
    	char var[100];
    
    	if((input1 = fopen("C:\a.txt","r")) != NULL)
    	{
    		fgets(var,100,input1);
    		fclose(input1);
    		a = atoi(var);
    	}
    	if((input2 = fopen("C:\b.txt","r")) != NULL)
    	{
    		fgets(var,100,input2);
    		fclose(input2);
    		b = atoi(var);
    	}
    	printf("risultato %d", a - b);
    }
    
  • Re: Lettura file e utilizzo del valore all'interno

    Grazie per l'aiuto! comunque il mio intento era di creare un cronometro senza la libreria time.h, e che si avvia quando inserisco la periferica usb.. questo infatti deve leggere l'inserimento dai log file di linux, e creare 3 che contengono secondi, minuti, e ore, da comparare con altri tre file con secondi minuti e ore, che vengono costantemente aggiornati tramite goto, che prendo dal comando: date..
    lo so è un po strana cm cosa ma è l'unica k m è venuta in mente
  • Re: Lettura file e utilizzo del valore all'interno

    Per leggere il log devi avere diritti di root.
  • Re: Lettura file e utilizzo del valore all'interno

    Sul bus ed il device puoi leggere la data e l'ora senza permessi. Ti riporto un esempio di una semplice memory card
    
    max@studio:~> lsusb | grep Genesys
    Bus 001 Device 003: ID 05e3:070e Genesys Logic, Inc. X-PRO CR20xA USB 2.0 Internal Card Reader
    max@studio:~>ll /dev/bus/usb/001/003
    crw-rw-r-- 1 root root 189, 2  5 nov 10:03 /dev/bus/usb/001/003
    
    001 && 003 te le fornisce 'lsusb'
    quando scolleghi la periferica:
    
    max@studio:~> ll /dev/bus/usb/001/003
    ls: impossibile accedere a /dev/bus/usb/001/003: No such file or directory
    
  • Re: Lettura file e utilizzo del valore all'interno

    Grazie a tutti x le risposte! grazie anche a te ixamit! la tua idea mi ha incuriosito e ho provato, ma purtroppo h visto che il comando lsusb e successivamente ll /dev/ecc.. non mi da i secondi di quando è stato collegato il dispositivo! avete quindi altre idee?? come potrei dare i privilegi di root per leggere i log file?? grazie ancora per le risposte
Devi accedere o registrarti per scrivere nel forum
9 risposte