Hallo,
ich habe ein Problem mit
fgetpos(FilePtr, &pos)
und
fsetpos(FilePtr, &pos)
und zwar lese ich eine Datei ein, speicher mir mit
fgetpos
die Position,
springe mit
rewind(FilePtr)
wieder an den Anfang der Datei, usw. und danach möchte ich wieder an die am Anfang gemerkte Position zurückkehren. Dies habe ich mit
fsetpos(FilePtr, &pos)
versucht, jedoch ohne Erfolg
Denn entweder ist er noch in der Zeile, in der ich mich zuvor befunden habe( also irgend wo weit vor der gemerkten Zeile).
oder wenn ich noch ein
fgets(input,255,FilePtr);
dahinter schreibe, gelange ich in die nächste Zeile, der zuvor gespeicherten Zeile, jedoch aber nicht an den Anfang der Zeile, sondern irgendwo mittendrin.
Bsp für die Einlesedatei:
1 2 3 4 5 6
|
82
1 44 9
name
111 112 113 111 0 115 114 0
113 118 116 117 118 0 117 114
|
mein Plan war eigentlich mir jeweils die aktuelle Zeile zu merken zB die mit 111 anfängt, dann für kurze Zeit in frühere Zeilen zu springen und danach in meine gespeicherte Zeile zurückzukehren.
Wenn ich mir die Zeile von der 82 merke und 2 mal fgets(,,) mache, kommt er in Zeile 111 an. Jedoch kann ich dies nicht verwenden,
ich muss mir nämlich die aktuelle Zeile merken( erst 111, bis ich sie durchgearbeitet habe, danach im nächsten Schleifendurchlauf die 113...usw)
Kann mir jemand sagen wie ich das
fsetpos(FilePtr, &pos)
richtig verwende?
die pos stimmt noch mit fgetpos überein, daran liegt es nicht.
Danke!