Nel mio codice C++, voglio leggere da un file di testo (* .txt) e tokenize ogni voce. Nello specifico, voglio essere in grado di leggere singole parole da un file, come "format", "stack", "Jason", "europe", ecc..Come posso utilizzare i delimitatori non predefiniti durante la lettura di un file di testo con std :: fstream?
ho scelto di usare fstream
per svolgere questo compito, e non so come impostare è delimitatore a quelle che voglio usare (spazio, \n
, così come i trattini e anche apostrofi come in "McDonal di"). Ho immaginato lo spazio e \n
sono i delimitatori predefiniti, ma i trattini non lo sono, ma voglio trattarli come delimitatori in modo che quando analizzo il file, otterrò le parole in "blah blah xxx animal - cat" come semplicemente "blah", "blah", "xxx", "animal", "cat".
Cioè, voglio essere in grado di ottenere due stringhe da "stack-overflow", "sei", ecc, ed essere ancora in grado di mantenere \n
e lo spazio come delimitatori allo stesso tempo.
getline (flusso, variabile, delimitatore); –
Vuoi filtrare "animale - gatto" perché contiene trattini? Questo non mi sembra un rammendo. – Johnsyweb
Non sto cercando di filtrarli; Sto cercando di leggere animali e gatti come due parole separate. – FrozenLand