sscanf *.unv file

Hallo,

ich habe ein Problem. Und zwar will ich ein .unv file einlesen in C++ mit sscanf.
Das geht auch soweit gut.
Aber nun befindet sich im .unv file ein Block 82 [ http://www.sdrl.uc.edu/universal-file-formats-for-modal-analysis-testing-1/file-format-storehouse/unv_0082.htm ]
und ich bräuchte die Werte aus Record 3.
Leider weiß ich nicht, wie genau diese getrennt sind, ob mit tab oder Leerzeichen oder ähnlichem. Habe bei google bis jetzt auch noch nichts über die Formatierung herausgefunden.

Kann mir dabei jemand weiterhelfen?
Und, wie ich am besten die einzeln Werte aus dieser Zeile am Besten einlesen kann?


z.B diese Zeile: " 101 102 103 101 0 105 104 0"

Das wäre bis jetzt meine Idee, allerdings fehlt mir im ersten sscanf die Trennung (???):

1
2
3
charZg = strstr(eingabezeile,"[0-9]"); // suche nach erster Zahl? 
sscanf(charZg,"???%s", hilfStr, eingabezeile); 
sscanf(hilfStr,"%d", knotennr); 


Danke für die Hilfe!
Leider weiß ich nicht, wie genau diese getrennt sind, ob mit tab oder Leerzeichen oder ähnlichem.
sscanf() ignoriert die Leerzeichen, dabei spielt die Art des Leerzeichens keine Rolle

Siehe hier:

http://www.cplusplus.com/reference/cstdio/sscanf/?kw=sscanf
http://www.cplusplus.com/reference/cctype/isspace/?kw=isspace

Und, wie ich am besten die einzeln Werte aus dieser Zeile am Besten einlesen kann?


z.B diese Zeile: " 101 102 103 101 0 105 104 0"

Zum Beispiel so:
1
2
3
4
5
6
7
8
9
int value[100];
for(int i = 0; i < 100; ++i)
{
  if(sscanf (eingabezeile,"%d", &value[i]) > 0)
    ;
  else
    break;
}
Topic archived. No new replies allowed.