Hallo zusammen,
ich habe folgendes Problem:
mein Bekannter hat mit Maxig ein Diavortrag erstellt und viel Zeit
investiert. Dann ist irgendwie der Ordner verloren gegangen, in dem er
die ganzen Fotos hatte, die in dem Vortrag verwendet werden. Die
Projekt-Datei von dem Vortrag enthält Verweise auf die Photos (auf die
Namen der Fotos), aber die werden in Magix nicht mehr angezeigt. Wenn er
die Namen der Fotos in der Reihenfolge, wie sie in dem Projekt geordnet
sind wissen würde, dann könnte er die Fotos wieder besorgen (waren von
mehreren anderen Leuten) und die entsprechend umbenennen und in einen
Ordner stecken, dem dem Pfad in dem Magix-Projekt entspricht. dann wäre
alles wiederhergestellt. Aber das geht nur, wenn man auf die
Projekt-Datei zugreift und die Namen der .jpg-Dateien in der Reihenfolge
wie sie da kommen, rausliest. Ich habe es von ein paar Jahren in
Informatik gemacht, das würde aber lange dauern, bis ich das wieder
machen kann. Könnte jemand von euch vielleicht so ein kleines Programm
schreiben, das auf die Datei zugreift, die Strings mit .jpg am ende
rausliest und die in der richtigen Reihenfolge in eine Text-Datei legt?
Damit wäre uns sehr geholfen
Nimm einen brauchbaren Editor, suche nach ".jpg", markiere den Filenamen
davor und mache CTRL-C, CTRL-V.
Für einen einmaligen Vorgang ist der Aufwand so groß wie der, ein
Programm zu schreiben.
kommt darauf an, wie viele .jpg Dateien da sind. Es sind mehrere
Hundert. In diesem Fall bin ich überzeugt, dass ein Programm viel
leichter zu erstellen ist, als das. In der Zeit, als ich
Informatik-Vorlesung besucht habe, würde ich so ein Programm vielleicht
so in 5 Minuten schreiben können oder noch schneller. Jemand vom Fach
kann das noch viel schneller, es sind ja nur ein paar Zeilen.
Das kann allerdings keiner, der das Format nicht kennt. Wenn du
Beispieldaten postest und zeigst, wie die Strings begrenzt sind - vllt
anführungsstriche drum oder so - sind die Chancen, dass dir das einer
fix zusammenhackt, größer.
Ich hänge die Datei an. Die Strings sind nicht durch irgendwelche
ASCII-Zeigen begrenzt, sonder von irgendwelchen, nicht lesbaren Zeichen
umgeben (ich schau mir das mit Notepad++ an). Das Stringende ist ja an
.jpg am Ende erkennbar, den Stringanfang kann man nicht erkennen, aber
wenn man davon ausgeht, dass z.B. 20 Zeichen vor Dateiendung der
Dateiname beginnt dann hat man je den Dateinamen mit evtl. ein paar
unlesbaren Zeichen davor.
Habs mit dem Kommando
sed "s/\\x00\([^\\x00]*\)\(\.[Jj][Pp][Gg]\)/\\x0A\1\2\\n\\x0A/g" | grep
-a -i jpg > out
gemacht, die Ausgabe ist im Anhang, sind noch ein paar Müllzeilen drin
ich danke euch vielmals,
gerade das habe ich gebraucht. Ich wusste, dass das relativ
unkompliziert machbar ist, nur es ist zu lange her, wo ich das gelernt
habe. Ich habe schon angefangen, mich wieder in Dateiein- und Ausgabe in
C++ wieder einzulesen. Das hätte mich wohl einige Stunden Zeit gekostet.
Das war sehr nett von euch, also nochmals besten Dank!!!!