Neu Kein Semikolon am Ende der Zeile

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
Wenn ich mit der Ameise eine csv-Datei erstelle, befindet sich am Ende jeder Zeile ein Semikolon.
Gibt es eine Einstellungsmöglichkeit, dass bei der Erstellung der Datei kein Semikolon am Ende ausgegeben wird?

Zwecks späterer Batch-Bearbeitung brauche ich die Datei ohne Semikolon am Ende.
 

Enrico W.

Administrator
Mitarbeiter
27. November 2014
9.051
1.887
Nein, da gibt es keine Einstellungsmöglichkeit, tut mir leid.
Könntest Du mir bitte beschreiben, warum das notwendig wäre?
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
Ich erzeuge mit einer Batchdatei am Ende dieser csv eine weitere Spalte mit einer Berechnung:

Code:
@echo off
setlocal enabledelayedexpansion
set CsvFile=bestand.csv
set OutFile=bestand-mit-neuer-spalte.csv
if exist "%OutFile%" del "%OutFile%"
for /f "delims=" %%C in ('type "%CsvFile%"') do (
for /f "tokens=1,2,3 delims=;" %%a in ("%%C") do (
set /A Col1=%%a
set /A Col2=%%b
set /A Col2=%%c
echo Processing !Col1!
set /A NewCol=%%b-%%c
>>"%OutFile%" echo %%C;!NewCol!
)
)
echo Done.

Diese Batch-Prozedur funktioniert nur, wenn in der Ausgangs-csv KEIN Semikolon am Zeilenende ist.
 
Zuletzt bearbeitet:

fibergirl

Sehr aktives Mitglied
14. April 2016
832
262
Ein Semikolon am Zeilenende ist auf jeden Fall kein CSV-Standard.
Da könnten schon Tools drüber stolpern.

Aber vielleicht hast Du da am Ende noch ein leeres Feld?
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
Eventuell kann man ja mit einem Batch-Befehl das letzte Zeichen in einer Zeile (Semikolon) löschen, aber da hab ich nichts gefunden.
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
Inhalt der "bestand.csv", alle Semikolon am Ende bereits gelöscht:

Code:
Name;AufLager;bestellt
Name1;20;8
Name2;22;9
Name3;24;10
Name4;26;11
Name5;28;12
Name6;30;13
Name7;32;14
Name8;34;15
Name9;36;16
Name10;38;17

von der Ameise leider mit Semikolon am Schluss jeder Zeile erzeugt.


Fogende Batch wird ausgeführt (bestand.bat):

Code:
@echo off
setlocal enabledelayedexpansion
set CsvFile=bestand.csv
set OutFile=bestand-mit-neuer-spalte.csv
if exist "%OutFile%" del "%OutFile%"
for /f "delims=" %%C in ('type "%CsvFile%"') do (
for /f "tokens=1,2,3 delims=;" %%a in ("%%C") do (
set /A Col1=%%a
set /A Col2=%%b
set /A Col2=%%c
echo Processing !Col1!
set /A NewCol=%%b-%%c
>>"%OutFile%" echo %%C;!NewCol!
)
)
echo Done.


Folgedes Ergebnis in der bestand-mit-neuer-spalte.csv

Code:
Name;AufLager;bestellt;0
Name1;20;8;12
Name2;22;9;13
Name3;24;10;14
Name4;26;11;15
Name5;28;12;16
Name6;30;13;17
Name7;32;14;18
Name8;34;15;19
Name9;36;16;20
Name10;38;17;21

Kennt jemand eine Möglichkeit, das Semikolon am Ende jeder Zeile in der von der Ameise erzeugten csv-Datei zu eliminieren?
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
Für alle die es mal brauchen: mit folgender Batch-Datei kann man alle Semikola am Zeilenende eliminieren:


Code:
@echo off
setlocal enabledelayedexpansion

for %%a in (bestand.csv) do (
    set txtPath=%%~fa
    echo !txtPath!
    for /f %%b in ('type "!txtPath!"') do (
        set line=%%b
        set output=!line!
        if "!line:~-1!"==";" (
            for /l %%i in (1,1,1000) do if "!output:~-1!"==";" set output=!output:~0,-1!
        )
        echo !output!>> bestand-ohne-semikolon.csv
    )
)
 

Uwe Jaksties

Sehr aktives Mitglied
13. Mai 2014
571
119
Hallo,

rein aus Interesse... inwiefern soll das abschließende Semikolon Deine Batchdatei beeinflussen?
Mit der jetzigen Batch solltest Du lediglich eine Leerspalte vor deiner zusätzlichen Ausgabe haben und sogar die sollte wegfallen, wenn Du statt "%%C;!NewCol!" "%%C!NewCol!" eingibst.
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
@Uwe Jaksties
Ja, gerade nochmal ausgetestet, es ist so wie du geschrieben hast.
Mit folgendem Code funktioniert das ganze nun tadellos, ein Entfernen des Semikolons am Zeilenende ist nicht notwendig:

Code:
@echo off
setlocal enabledelayedexpansion
set CsvFile=bestand.csv
set OutFile=bestand-mit-neuer-spalte.csv
if exist "%OutFile%" del "%OutFile%"
for /f "delims=" %%C in ('type "%CsvFile%"') do (
for /f "tokens=1,2,3 delims=;" %%a in ("%%C") do (
set /A Col1=%%a
set /A Col2=%%b
set /A Col2=%%c
echo Processing !Col1!
set /A NewCol=%%b-%%c
>>"%OutFile%" echo %%C!NewCol!
)
)
echo Done.

Danke für den Hinweis!
 

prodana

Gut bekanntes Mitglied
30. Oktober 2008
821
1
@Uwe Jaksties

Funktioniert leider nur in meinem kleinen Beispielfile.
In meiner Originaldatei gibt es noch Schwierigkeiten.
Könntest Du mal nachsehen, was da noch falsch ist?
 

Anhänge

  • Aktualisierung.zip
    1,1 KB · Aufrufe: 3

Uwe Jaksties

Sehr aktives Mitglied
13. Mai 2014
571
119
Das Problem ist, dass nicht mit Fließkommazahlen gerechnet werden kann. Insofern es nur ganzzahlige Bestände geben wird, sollte das aktualisierte Script helfen. Ich habe es noch etwas gekürzt.

Edit: Kurz zur Erklärung... Ich ersetze in Token 7 und 8 den Text ",00" mit nichts. So entstehen Ganzzahlen, mit denen gerechnet werden kann.
 

Anhänge

  • Aktualisierung.zip
    619 Bytes · Aufrufe: 6
  • Gefällt mir
Reaktionen: Jan-Patrick Schmidt

John

Sehr aktives Mitglied
3. März 2012
3.781
895
Berlin
...wer dieses Problem auch hat: Ich kann Euch ein keines Tool anbieten, welches das Trennzeichen entfernt.

Wohlgemerkt: Sauber. Keine schmuztigen Tricksereien, keine Abhängigkeiten und keine maximale Zeilenanzahl.

Die komplette Datei wird als Tabelle intern in das Tool eingelesen und sauber raus geschrieben.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu seit 1.8.25 kein Aufschalten von Angeboten merh möglich mit 1.7.14.0 Amazon-Anbindung - Fehler und Bugs 2
Nach dem Import von Aufträgen kein Artikel Preis JTL-Wawi 1.9 1
Probleme mit wawi, in der leiste wird kein onlineshop angezeigt JTL-Wawi 1.10 8
Neu Google Indexierung seit Monaten kein Fortschritt - Eher Rückschritt Allgemeine Fragen zu JTL-Shop 23
Neu Worker macht Fehler nach Update. kein Abgleich möglich Betrieb / Pflege von JTL-Shop 1
Zahlungsmodul - PayPal Fehler: kein lauschender Endpunkt JTL-Wawi 1.9 0
Primärkategorie via Ameise setzen nicht möglich – kein passendes Feld vorhanden (Wawi 1.10.11.0)? JTL-Wawi 1.10 5
Neu Seit 5.5.0: Manchmal plötzlich kein Checkout mehr möglich "Artikel vergriffen..." Meldung für gesamte Sortiment JTL-Shop - Fehler und Bugs 2
Kein Shop-Abgleich JTL-Wawi 1.10 2
Neu Kein Einlesen der VCS Rechnungen von Amazon seit 8. Mai Amazon-Anbindung - Fehler und Bugs 0
Neu FBA Anlieferungsplan Dortmund - Kein Transport auswählbar Amazon-Lister - Fehler und Bugs 0
Neu 5.5.0 wenn nur eine Versandart existiert, kein Checkout möglich... JTL-Shop - Fehler und Bugs 10
Kaufland.at - kein Abgleich kaufland.de - Anbindung (SCX) 1
Neu Shop Update von 5.2.4 - dbupdater - Kein Datenbank update Installation / Updates von JTL-Shop 1
Neu Shopify Connector - Verbindungsfehler zum Shop & Kein Abgleich mehr möglich Shopify-Connector 14
Neu Kein Login in den Admin nach Update Installation / Updates von JTL-Shop 7
Nach Update auf JTL 10.10.4 wird kein Versand mehr an Amazon übermittelt JTL-Wawi 1.10 4
Kein Ausdruken möglich nach Update auf dei 10.10.10.4 JTL-Wawi 1.10 2

Ähnliche Themen