Datei umbenennen fest einprogrammiert?

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von korni.

    Datei umbenennen fest einprogrammiert?

    Guten Tag,
    bitte lyncht mich jetzt hier nicht, ich hab an sich nahezu gar keine Ahnung von VB habe mir auf der Arbeit jetzt aber mal einen "alten" Code angeguckt den wir aktuell nutzen und der uns Probleme macht.

    Wir bekommen Daten geliefert die früher ausschließlich im TIF Format gekommen sind, aktuell bekommen wir die Daten aber immer öfter als PDF, das alte Programm benennt die Dateien wie gewollt um ... leider aber immer zu .tif, ohne Rücksicht auf Verluste.

    wie gesagt komplett ohne Ahnung davon zu haben (hab damals nur mal C++ gelernt und das auch nie richtig)
    Ich hab 2 Codes gefunden wobei einer vermutlich nicht benutzt wird daher nur mal hier der eine der sinn machen würde.

    Visual Basic-Quellcode

    1. t.WriteLine("Debitor" & Chr(9) & "01 " & ABSNR & " " & REKNDNR & Chr(9) & REKNDNR & Chr(9) & EMPNAME1 & Chr(9) & EMPLAND & "-" & EMPPLZ & " " & EMPORT & ", " & EMPSTRPF & Chr(9) & ABSNR & Chr(9) & REKNDNR & Chr(9) & Chr(9) & Microsoft.VisualBasic.DateAndTime.Today & Chr(9) & "Rechnung" & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & Chr(9) & RENR & Chr(9) & REDATUM & Chr(9) & REBETRAG & Chr(9) & Chr(9) & Chr(9) & Chr(9) & REART & ABSNR & "-" & RENR_DATEINAME & ".tif" & Chr(9) & "01")

    Das erzeugt soweit ich das verstanden habe eine Datei die von einem anderen Programm eingelesen wird und da wird dann die Datei mit den Infos die hier erzeugt werden umbenannt und verschoben.

    Wenn ich das richtig verstehe steht da hart vercoded drin das immer .tif eingetragen werden soll oder ?
    Das würde für mich bedeuten entweder für mich unmöglich den Code so anpassen das er sich die Endung der original Datei anguckt und in einer Variable speichert die dann nach dem umbenennen da wieder dran gehangen wird oder tif/pdf hart vercoded drin lassen und kommunizieren das wir nur eins von beiden akzeptieren können.


    Ich danke schon mal für jede hilfreiche Antwort selbst wenn es nur ist "deine Schlussfolgerung ist falsch" ;)
    Wäre auch interessant zu wissen wie lange ein halbwegs brauchbarer Programmierer ca. brauchen würde um so eine abfrage zu basteln ... wird vermutlich nicht so ganz genau möglich sein das ab zu schätzen ohne das komplette Programm zu kennen aber so ganz allgemein einfach nur eine Funktion die sich die original Datei anguckt und den typ als Variable speichert.

    mfg Youkai
    Willkommen im Forum.

    Tja, da steht erstmal nur, dass für das Objekt t (ist die Codezeile wirklich vollständig?) die Prozedur WriteLine ausgeführt wird und der ein String mitgegeben wird. Meine Vermutung ist, dass dieser String (= Text) in eine Datei geschrieben wird und der Dateiinhalt später ausgelesen und verarbeitet wird. Dass da drin Tif steht, ist an sich vermutlich unerheblich. Da Tif-Dateien anders als Pdf-Dateien ausgelesen werden müssen, muss man den Codeteil bearbeiten, der später die Datei, die mit dem hiesigen Code befüllt wird, ausliest und verarbeitet.
    Also zusammengefasst: Du dürftest an der falschen Codestelle sein.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @Youkai Bitte passe deinen Titel an, damit man schon von außen genau sieht, was die Fragestellung ist. Weiterhin als Hinweis: Ich habe das Label des Threads von VB6 auf VB.NET geändert, weil hier offenbar .NET eingesetzt wird.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum
    Danke erst mal, und sorry wenn VB falsch war ich hab wie gesagt eher weniger Ahnung davon ^^V

    @VaporiZed:
    Ja genau wie gesagt es wird eine Datei erstellt in der der zukünftige Dateiname komplett geschrieben werden soll das bedeutet das sich ein anderes Programm den kompletten durch das Script generierten Namen schnappt und die Datei einfach umbenennt und woanders hin kopiert.

    Das Problem welches ich habe ist halt genau das dieses Programm von dem ich den Schnipsel hier eingefügt habe (und ja es startet mit t.) scheinbar sagt das da im Dateinamen auf jeden fall .tif stehen sol.


    Wie meinst du das mit tif Dateien müssen ausgelesen werden ? es wird nur auf Grund des in dem Programm erzeugten namens eine Umbenennung vorgenommen, dadurch ist die "tif" Datei bzw. die ehemalige PDF welche in Tif umbenannt wurde nicht mehr lesbar von den meisten Programmen.

    Vollzitat durch Ansprachefunktion ersetzt ~VaporiZed

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    Hallo

    Ich weis du bist neu hier aber das ist alles nur geraten. Wie wäre es wenn du uns das ganze File anhängst. Damit fangen andere sicher mehr an und die kann schneller geholfen werden.
    Falls Passwörter oder andere Daten enthalten sind können diese ja unkenntlich gemacht werden oder gegen Pseudodaten getauscht werden.

    Wie schon geschrieben ist der von dir gepostete Teil mit sher hoher warscheinlichkeit nicht der Teil wo das passiert was du denkst.

    Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    Es wird also eine Datei erstellt, in der ein Dateiname steht. Dieser Dateiname wird an anderer ausgelesen. Was damit dann geschieht, wissen wir bisher nicht. Wenn Die TIF-Datei in irgendeiner Weise dann inhaltlich verarbeitet wird (und nicht nur irgendwo hinverschoben oder abgelegt wird), dann wird diese Datei von dem verarbeitenden (bisher noch unbekannten) Programmteil geöffnet und vielleicht analysiert. Wenn das aber in Wirklichkeit ne PDF-Datei ist, kann das Programm das ja nicht mehr öffnen oder analysieren, weil es ja ne TIF-Datei erwartet. Wenn diese TIF/PDF-Datei aber nur als Mailanhang oder als Projektanhang oderwasauchimmer irgendwo als Zusatz rumliegen soll, dann ist es wurscht. Dazu brauchen wir aber mehr Infos von Deiner Seite.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Ich weis halt nicht ob ich einfach den Code hochladen kann da es nicht meiner ist ^^V dürfte Probleme mit der DSGVO geben.

    Mein Chef hat allerdings dem Hersteller der es eigentlich für uns gemacht hat bereits ein kaufangebot vorgelegt, sollte das ganze unterschrieben werden kann ich ggf. mehr vom Code hochladen bzw. hier vielleicht auch wenn es denn sinn machen sollte ein kleines Jobangebot posten wobei das vermutlich nicht all zu günstig wird für uns ... wäre halt cool wenn ich dem einfach sagen kann "ich hab kein plan aber ich mach ma eben" ;)

    @VaporiZed
    Genau das, wie die Datei weiter verarbeitet wird ist für mein Problem aber erstmal irrelevant.
    Die Tif Datei kann halt auch tatsächlich danach nicht mehr geöffnet werden da es keine Tif ist sondern eigentlich ein PDF.
    Der Adobe Acrobat Professional hat damit kein Problem daher ist uns das lange nicht aufgefallen, da wir den aber jetzt abschaffen wollen haben wir das gemerkt.
    Mir geht es also nur darum die Bestätigung oder Verneinung zu bekommen ob da wirklich eine Datei erzeugt wird an dem punkt in dem ein Text steht der sagt das der Dateiname name.tif ist.
    ggf. kann das ".tif" ja auch ein Platzhalter sein und ich weis es einfach nur nicht. Im ersten Augenblick hätte ich aber gesagt das es keine Variable sein dürfte und somit hart vercoded ist.
    Wenn ich also das .tif in .pdf ändere sollte in der Datei eigentlich immer ein Name.pdf ausgeworfen werden was dann ein anderes externes Programm nimmt als Informationsquelle wie das verschoben werden muss. (das wird in unser DMS verschoben und da werden halt diverse Kunden Informationen und so mitgegeben und halt auch der zukünftige Dateiname)
    Hallo

    Klar, um was es dir geht und was dein Problem im Moment ist haben wir soweit alle verstanden (denke ich) aber dennoch ist die eine Zeile "Code" welche du gepostet hast nicht dein Problem, wir benötigen also mehr Infos welche wir aber nicht haben.

    Na dann mal abwarten.

    Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    Probiere einfach folgendes:

    Bau folgenden Code am Anfang ein wo die Datei/Dateiinfo eingelesen wird:

    VB.NET-Quellcode

    1. Dim path As String = "C:/Test.pdf" 'Hier der Pfad zur Datei inklusive Dateiname (z.b. "C:/Test.pdf"), eventuell gibt es hier schon eine Variable dafür
    2. Dim fileinfo = FileIO.FileSystem.GetFileInfo(path)
    3. Dim extensionString As String = fileinfo.Extension


    Ersetzte alle Strings im Code mit ".tif" mit extensionString und schau ob das das gewünschte Ergebnis liefert.
    Wenn das nicht zur Lösung führt wirst du wohl jemand anderen über den Code schauen lassen müssen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „korni“ ()