Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Csv (und andere Dateien) in charset utf-8 umwandeln (batch)

Frage Entwicklung Batch & Shell

Mitglied: OKIDOKI

OKIDOKI (Level 1) - Jetzt verbinden

22.02.2015, aktualisiert 22:31 Uhr, 1732 Aufrufe, 4 Kommentare

Guten Abend,

ich hänge seit Tagen an einem Problem:
Eine csv und php Datei möchte ich, wie der Titel sagt, verlässlich in charset=utf-8 umwandeln. Mit Notepad++ habe ich das eigentlich schon erledigt, im Browser werden in den Dateien ü,äö und ß aber immer noch als � angezeigt. Da ständig neue csv-Dateien anfallen, möchte ich die natürlich automatisch ummodeln.
Also, zwei Fragen:
Wie kann ich die Umwandlung sicher bewerkstelligen und wie automatisieren?

Habe hier einen Ansatz gefunden, der aber leider überhaupt nicht geht bei mir:

iconv -f ISO-8859-1 -t utf-8 foo > bar

Kann mir jemand helfen?
gruenlinge

Mitglied: rubberman
LÖSUNG 22.02.2015, aktualisiert um 22:31 Uhr
Hallo OKIDOKI,

mit Batch geht das, allerdings nicht ohne temporäre Dateien.
01.
@echo off &setlocal 
02.
:: Zieldatei spezifizieren 
03.
set "targetfile=test.txt" 
04.
 
05.
:: temporäre Dateien spezifizieren 
06.
set "utf16file=%temp%\tmp16.utf~" 
07.
set "utf8file=%temp%\tmp8.utf~" 
08.
 
09.
:: derzeitige Codepage sichern 
10.
for /f "tokens=2 delims=:" %%i in ('chcp') do set /a "oemcp=%%~ni" 
11.
 
12.
:: zu Windows-1252 wechseln 
13.
>nul chcp 1252 
14.
 
15.
:: Byte Order Marks schreiben 
16.
<nul >"%utf16file%" set /p "=ÿþ" 
17.
<nul >"%utf8file%" set /p "=" 
18.
 
19.
:: Konvertierung zu UTF-16 LE 
20.
>>"%utf16file%" cmd /u /q /d /c type "%targetfile%" 
21.
 
22.
:: Konvertierung zu UTF-8 
23.
>nul chcp 65001 
24.
>>"%utf8file%" cmd /a /q /d /c type "%utf16file%" 
25.
 
26.
>nul chcp %oemcp% 
27.
 
28.
:: UTF-16 Datei löschen 
29.
del "%utf16file%" 
30.
:: Zieldatei durch UTF-8 Datei ersetzen 
31.
>nul move /y "%utf8file%" "%targetfile%"
Grüße
rubberman
Bitte warten ..
Mitglied: 114757
LÖSUNG 22.02.2015, aktualisiert um 22:31 Uhr
Moin,
oder mit Hilfe von Powershell in Batch
01.
powershell -ExecutionPolicy ByPass -Command "&{gc 'c:\data_in.csv' | set-content 'c:\data_out.csv' -Encoding UTF8}"
oder wenns mehrere Dateien auf einmal sein sollen
01.
powershell -ExecutionPolicy ByPass -Command "&{gci 'c:\daten\*.csv' | %{ (gc $_.Fullname) | set-content $_.Fullname  -Encoding UTF8}}"
Gruß jodel32
Bitte warten ..
Mitglied: OKIDOKI
22.02.2015 um 21:51 Uhr
Hallo rubberman,
hallo jodel32,

werde beide Varianten ausfürhlich probieren! (Jetzt ist erst mal Bett angesagt ).

Schon mal Vorab riesigen Dank!
Gruenlinge
Bitte warten ..
Mitglied: OKIDOKI
22.02.2015 um 22:14 Uhr
... ich habs eben doch noch einmal ausprobiert

Beide Varianten gehen bei mir, wobei ich mich für die rubbermann-Variante entscheiden werde. Grund: Diese kann ich in meinen vorhandenen Batchablauf noch einfacher integrieren. Allerdings habe ich das Gefühl, dass Powershell deutlich leistungsfähiger ist - in batch finde ich zumindest viele Fehler und fühle mich da sicherer...

Ich danke euch für eure prima Hilfe!
gruenlinge
Bitte warten ..
Ähnliche Inhalte
Ubuntu
Dateiinhalt in UTF-8 ist nicht gleich UTF-8?
gelöst Frage von lexa-lexaUbuntu6 Kommentare

Hi Linux und PHP Gurus, ich habe ein Problem mit dem Zeichensatz *in* einer Datei und komme nicht weiter: ...

Batch & Shell
txt mit UTF-8 Codierung per batch in ANSI Codierung umwandeln
gelöst Frage von pdiddoBatch & Shell3 Kommentare

Hi Leute, ich brauche eure Hilfe. Ich habe eine .txt Datei die in UTF-8 codiert ist. Ich möchte mittels ...

Batch & Shell
Text Datei in csv-Datei umwandeln
gelöst Frage von Haru777999Batch & Shell2 Kommentare

Hallo zusammen Am liebsten hätte ich den "Biber (Level 5 oder jetzt noch höher?)" für meine Frage. Hallo Biber! ...

Batch & Shell
Datum in einer CSV datei in Tage umwandeln
Frage von nolle99Batch & Shell13 Kommentare

Hi leute Ich habe eine .CSV Datei in der folgendes steht 123412413243;weber;02.08.2016 23434412413243;meier;18.08.2016 1232434413243;kurt;; 993413243243243;meier;25.08.2016 993413243243243;kleber;25.11.2016 Jetzt soll eine ...

Neue Wissensbeiträge
Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 7 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 7 StundenSicherheit1 Kommentar

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1011 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell22 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen18 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Logging von "gesendeten Nachrichten" auf Terminalservern
gelöst Frage von Z3R0C0MM4N0THiN6Windows Server10 Kommentare

Hallo zusammen, kann mir jemand auf kurzem Wege sagen ob 1) die per Task-Manager (oder damals tsadmin) an Benutzer ...