PDA

Visualizza la versione completa : [C] Lettura caratteri da record


Smoke666
08-03-2012, 16:37
Ciao a tutti ragazzi, sto svolgendo un progetto abbastanza corposo, e mi sono bloccato su un punto in particolare.
Devo leggere un record da me creato in precedenza, che è formattato nel seguente modo:

Autore: Nome, (virgola separatore) Cognome
Titolo: TitoloLibro

Il record di cui sopra l'ho creato con una funzione che è concettualmente opposta a quella che mi trovo a dover scrivere ora, ovvero, dopo aver definito delle strutture, ho preso i dati relativi ai vari campi, li ho manipolati e concatenati per ottenere un'unica stringa composta dalle sottostringhe (ad esempio per Autore: ) "Autore: " "Nome" "," "Cognome"\n e così via..
Ora mi trovo a dover leggere queste stringhe e riportarle nei loro campi delle struct, solo che sono bloccato sulla loro lettura.
Avevo intenzione di leggere e scartare mediante una scanf tutti i caratteri che precedono il simbolo ":" , cosa semplice da realizzare mediante l'istruzione scanf("%*[^:]"). Ora arriva il primo problema, come posso fare a leggere tutti i caratteri compresi tra i simboli ":" e "," ? Per il campo "Cognome" il ragionamento sarà uguale, basta leggere tutti i caratteri compresi tra lo spazio dopo la virgola e il carattere newline. Vi ringrazio in anticipo! :) :)

Loading