Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

ich mach hier schon seit ein paar Tagen an nem kleinen Skript (VBS) rum und komme einfach nicht weiter.

Ich habe eine csv Datei (namen.csv). Ich möchte die ausgelesenen Daten mit einer zweiten csv vergleichen (main.csv). Alle Werte in der namen.csv sollen aus der main.csv gelöscht werden.

Hat jemand einer Idee? Ich habe schon versucht die Microsoft Reference zu verwenden...Leider ohne Erfolg, da ich ein Array mit den Werten aus namen.csv habe und nicht einen fixen String.

Vielen Dank und Gruß

P.S. Microsoft Skript Code

Const FOR_READING = 1

Const FOR_WRITING = 2

strFileName = "C:\scripts\test.txt"

strCheckForString = UCase("july")


Set objFS = CreateObject("Scripting.FileSystemObject")

Set objTS = objFS.OpenTextFile(strFileName, FOR_READING)

strContents = objTS.ReadAll

objTS.Close


arrLines = Split(strContents, vbNewLine)

Set objTS = objFS.OpenTextFile(strFileName, FOR_WRITING)


For Each strLine In arrLines

   If Not(Left(UCase(LTrim(strLine)),Len(strCheckForString)) = strCheckForString) Then  

      objTS.WriteLine strLine

   End If

Next

Geschrieben

entscheide dich, bevor du eine zeile code umsetzt, *wie* du das problem angehen willst.

formuliere den algorithmus in pseudocode:

öffne main.csv 

öffne namen.csv 

für jede zeile in main.csv

  schau ob zeile in namen.csv 

  wenn zeile ident

    schreibe zeile neu

schliesse namen.csv 

schliesse main.csv 

bedenke auch, dass du in deinem codeauszug ein und dieselbe datei einmal FOR_READING und einmal FOR_WRITING öffnest. ich bin mir nicht sicher, ob das funktionieren kann.

s'Amstel

Geschrieben

bedenke auch, dass du in deinem codeauszug ein und dieselbe datei einmal FOR_READING und einmal FOR_WRITING öffnest. ich bin mir nicht sicher, ob das funktionieren kann.

s'Amstel

er will doch nciht die zwei mald ie selbe datei öffnen oder hab ich da was falssch verstanden

einmal aus Nr 1 auslesen dann mit Nr 2 vergleichen und wenn dann Nr 1 = Nr 2 dann in 2 löschen oder ???

du hast doch bestimmt ne Trennung drin wie ein " ; " oder " / " oder was in der art, woran du erkennen kansnt wo anfang/ende ist

warum lieest du nciht eifnach string weise aus verlgeichst es schreibst es in ne neue datei (nur zeitweilig) und wenn du mit der ganzen datei fertig bsit, schreibste die komplett in einem abwasch zurück

dann brauchste keine Arrays. Sehe auch nciht das Problem da was zu entfernen/ersetzten

und kann man nciht sogar in VB in nem Array ne bestimmte stelle ansprehcne durch z.B.

Array = " hier ersetzten"

oder eifnach

Array[10] = " hier ersetzten"

oder so ?^^ also programmiere net so viel mit VB immer nur mit C ...^^

aber hoffe konnte dir ein wenig helfen und leige jetzt nciht total daneben xD

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...