PROBLEMA Prendere caratteri numerici da un file di testo c++

loryAsdw

Nuovo Utente
135
9
CPU
Intel i7 6700k 4.2ghz
Dissipatore
Arctic freezer 7 pro
Scheda Madre
Asus h110m
HDD
Samsung SSD 870 EVO 500gb +wd elements 1tb
RAM
Hyperx fury 16gb (2×8) ddr4 2400mhz
GPU
Nvidia Zotac gtx 1660 6gb OC
Monitor
Benq zowie 24" full hd 1ms
PSU
Corsair vs450
Case
Sharkoon M25-W
Periferiche
Tastiera meccanica Mouse Razer Viper Mini
OS
Windows 10 pro
Buonasera, come da titolo, la mia domanda era come faccio a prendere qualsiasi carattere numerico (1,2,3,4,45,67....) in un file di testo attraverso fstream ? per le stringe utilizzo getline, ma per i numeri non so quale sia il comando nonostante abbia girato tutti i forum immaginabili, Grazie in anticipo !!:muro::muro:
 

Andretti60

Utente Èlite
6,440
5,091
immagino tu stia parlando di file di testo e non binari.
Io in genere uso getline() (o equivalente) e metto l’intera linea in una stringa, poi uso sscanf() per leggere i vari elementi. Ovvio devi sapere come sia formattata la stringa, per esempio devi sapere di che tipo di dato siano i numeri.
Ovvio puoi usare anche solo fscanf(), la mia è una preferenza personale perché mi dà più flessibilità nel trovare possibili errori di lettura.
 
  • Mi piace
Reazioni: loryAsdw

loryAsdw

Nuovo Utente
135
9
CPU
Intel i7 6700k 4.2ghz
Dissipatore
Arctic freezer 7 pro
Scheda Madre
Asus h110m
HDD
Samsung SSD 870 EVO 500gb +wd elements 1tb
RAM
Hyperx fury 16gb (2×8) ddr4 2400mhz
GPU
Nvidia Zotac gtx 1660 6gb OC
Monitor
Benq zowie 24" full hd 1ms
PSU
Corsair vs450
Case
Sharkoon M25-W
Periferiche
Tastiera meccanica Mouse Razer Viper Mini
OS
Windows 10 pro
no scusami mi sono espresso male, per file di testo intendevo un file con estensione .txt ma che possa contenere anche dei numeri, perciò la mia domanda era come prendere questi numeri (che con le stringhe appunto si effettua con getline) dopo averli messi appunto in un file con estensione .txt attraverso la libreria fstream, sono qui per chiarimenti !
p.s se è possibile potete metterci anche un esempio... grazie in anticipo !
 

AntonioRagagnin

Nuovo Utente
13
11
la mia domanda era come prendere questi numeri (che con le stringhe appunto si effettua con getline) dopo averli messi

Come ti e' stato risposto, questa cosa la si puo fare in due passaggi: (1) usi getline per estrarre righe del file e memorizzarle in formato stringa e poi (2) usi delle funzioni apposta per estrarre numeri da una variabile di tipo stringa (es. ti e' stata citata la funzione fscanf).

E' molto difficile dare altri aggiuntivi senza sapere ad es. in che formato sono i file e che prove hai fatto per leggere e cosa non ha funzionato
 

Andretti60

Utente Èlite
6,440
5,091
Come da regolamento di sezione possiamo aiutarti solo dopo che tu abbia pubblicato il tuo codice, anche non funzionante, altrimenti possiamo solo darti suggerimenti generici (come abbiamo fatto).
Comunque ti ho dato due suggerimenti: sscanf e fscanf, leggiti le pagine del manuali di queste funzioni di sistema. Non sono le uniche che puoi usare, ma sono le più versatili.
 
  • Mi piace
Reazioni: loryAsdw

loryAsdw

Nuovo Utente
135
9
CPU
Intel i7 6700k 4.2ghz
Dissipatore
Arctic freezer 7 pro
Scheda Madre
Asus h110m
HDD
Samsung SSD 870 EVO 500gb +wd elements 1tb
RAM
Hyperx fury 16gb (2×8) ddr4 2400mhz
GPU
Nvidia Zotac gtx 1660 6gb OC
Monitor
Benq zowie 24" full hd 1ms
PSU
Corsair vs450
Case
Sharkoon M25-W
Periferiche
Tastiera meccanica Mouse Razer Viper Mini
OS
Windows 10 pro
ok grazie mille ! scriverò in questi giorni qui se avrò riscontrato problemi...:varie13:
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili