In datei schreiben und gleichzeitig lesen
-
Hallo,
ich habe ein Problem, wobei ich mir auch beim Prinzipm, wie es zu lösen ist, nicht sicher bin.
Ein Programm schreibt konstant Zeile für Zeile Daten mit fprintf in eine Datei A.
Ab einem bestimmten Punkt Sollen alle Zeilen der Datei A über Netzwerk, gelesen werden und in eine Datei B auf dem anderen PC geschrieben werden.
Das konstante dazuschreiben von Daten in A geht aber weiter.Wenn alle Daten übertragen sind (also kopiert) sollen die Daten direkt an B gesendet werden. Dabei sollte keine Zeile verloren gehen?
Hat jemand einen logischen Ansatz, wie das Problem zu lösen ist? Ich müsste ja immer mit fseek den Curser verschieben, weil ich nicht alle Daten auf einmal lesen und wegkopieren kann weil das schreiben immer weitergeht.
Grüße,
filla
-
vielleicht schilderst du uns auch erstmal dein allgemeines problem. evtl gibts es einen anderen lösungsansatz.
-
nimm nen zweiten zeiger auf FILE für datei A und öffne sie zum lesen. da checkst du, ob weitere daten dazugekommen sind. wenn ja, daten lesen -> schwupp so einfach ist das.
-
über Netzwerk, gelesen werden
Du kannst nicht einfach über's Netzwerk eine Datei auslesen. Dafür müsstest du dich am Rechner mit Datei A authentifizieren, die nötigen Rechte besitzen etc.
Was du willst, sind gepufferte TCP-Sockets mit einem Client-Server-Prinzip.