AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Externes Programm ausführen

Ein Thema von Willie1 · begonnen am 11. Dez 2017 · letzter Beitrag vom 17. Jan 2018
Antwort Antwort
Delphi.Narium

Registriert seit: 27. Nov 2017
2.578 Beiträge
 
Delphi 7 Professional
 
#1

AW: Externes Programm ausführen

  Alt 17. Dez 2017, 16:23
Was wird denn von ExifTool auf der Kommandozeile für Düsseldorf ausgegeben? Sieht's dort richtig aus. Habe schon Kommandozeilenprogramme erlebt, die nicht den dort üblichen Zeichensatz nutzen, so dass dort Düsseldorf "falsch" ausgegeben wurde. Wenn dem so ist, scheitert auch eine Übersetzung nach Ansi, Unicode ...

Könntest Du bitte mal die Ausgabe von ExifTool auf der Kommandozeile für diesen Problemfall in eine Datei umleiten?
Und dann (ohne eine von Dir vorgenommene Konvertierung) die Ausgabe, die Du in Deinem Programm erhältst?
Und das dann beides hier mal anhängen, eventuell kommen wir damit ja irgendwie weiter.
Wenn Du das entsprechende JPG mir dazulegen könntest, wäre nett, dann könnte man mal schauen, was da "wirklich" dinnesteht, um dem Zeichensatzwirrwarr, der momentan herrscht, mal auf die Sprünge zu kommen.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
733 Beiträge
 
Delphi 10.1 Berlin Starter
 
#2

AW: Externes Programm ausführen

  Alt 17. Dez 2017, 17:50
Also, wenn ich K-Dom.txt im Explorer öffne, wird Köln korrekt angezeigt. Ween ich erst Notepad öffne und dann K-Dom.txt öffne, wirden die Umlaute falsch angezeigt. Es geht um den Tag City.
Anbei Bild und Txt-Datei.

P.S Stattdessen ein Bild von der schönen Nachbarstadt.
Angehängte Grafiken
Dateityp: jpg K-Dom.jpg (141,7 KB, 8x aufgerufen)
Angehängte Dateien
Dateityp: txt K-Dom.txt (8,8 KB, 11x aufgerufen)

Geändert von Willie1 (17. Dez 2017 um 17:54 Uhr) Grund: Rechtschreibung
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.578 Beiträge
 
Delphi 7 Professional
 
#3

AW: Externes Programm ausführen

  Alt 17. Dez 2017, 18:11
Die Textdatei ist die unveränderte Ausgabe von ExifTool? Dann dürfte das nicht den "DOS-Zeichensatz" benutzen.

Hab' mir mal die aktuelle Fassung geholt. Bei mir sieht es so aus, als wären die Umlaute ... bei der Ausgabe auf der Kommandozeile UTF8.

Wenn man die in eine Datei umgeleitet Ausgabe mit Totalcommander anschaut und dort als Zeichensatz UTF8 wählt, werden die Umlaute korrekt angezeigt.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
733 Beiträge
 
Delphi 10.1 Berlin Starter
 
#4

AW: Externes Programm ausführen

  Alt 17. Dez 2017, 18:38
Zitat:
Die Textdatei ist die unveränderte Ausgabe von ExifTool? Dann dürfte das nicht den "DOS-Zeichensatz" benutzen.
Ich habe sie eben mit Exiftool K-Dom.jpg -w! .txt in der CMD erzeugt.

Alles weitere später ...

Schönen Abend Willie.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.505 Beiträge
 
Delphi 12 Athens
 
#5

AW: Externes Programm ausführen

  Alt 17. Dez 2017, 19:25
Dir ist im Öffnen-Dialog des Notpad etwas aufgefallen?

Wenn die Datei per Parameter geöffnet wird, dann läuft eine Automatik über die Datei und erkennt das UTF-8.
Beim manuellen Öffnen mußt du die Standard-Codierung angeben und die steht nunmal auf ANSI, wenn du das nicht änderst.

Problem: Die Datei ist zwar UTF-8, aber ohne explizite Angabe der Codierung -> BOM

Das Selbe gibt übrigens auch für LoadFromFile und den TFileStream -> Standard-Kodierung über den Encoding-Parameter.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (17. Dez 2017 um 19:28 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
733 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Externes Programm ausführen

  Alt 18. Dez 2017, 16:16
Hallo, ich habe mir Folgendes ausgedacht, es funktioniert zuerst mal. Nach den vielen Pleiten vielleicht ein Fortschritt. In meinem Archiv gefunden.

Delphi-Quellcode:
  function Ex195(const s: string): string;
  var // Die deutschen Umlaute + ß werden falsch dargestellt (Unicode)
    po: Integer;
    ch: Char; // Durch Ausprobieren habe ich die Codes herausbekommen
  begin // erst #195 dann Zeichen ... - 16-10-2008
    Result:=s; // Utf8ToAnsi() von Delphi macht genau das
    po:=Pos(#195,Result);
    while (Length(Result) > 0) and (po > 0) do begin
      ch:=Result[Po+1];
      System.Delete(Result,po,2);
      case ch of
        #$84: ch:='Ä';
        #$96: ch:='Ö';
        #$9C: ch:='Ü';
        #$A4: ch:='ä';
        #$B6: ch:='ö';
        #$BC: ch:='ü';
        #$9F: ch:='ß';
        else ch:='.'
      end;
      System.Insert(ch,Result,po);
      po:=Pos(#195,Result,Succ(po))
    end
  end;
Willie.

Geändert von Willie1 (18. Dez 2017 um 17:38 Uhr) Grund: Rechtschreibung
  Mit Zitat antworten Zitat
Benmik
Online

Registriert seit: 11. Apr 2009
575 Beiträge
 
Delphi 12 Athens
 
#7

AW: Externes Programm ausführen

  Alt 18. Dez 2017, 19:04
In dem von dir angehängten Bild finde ich nicht die Informationen, die du ausgelesen hast. Kannst du mal das Original einstellen oder zumindest eins, in dem alle Informationen erhalten geblieben sind?

PS: Ich denke mal, ich habe die Lösung gefunden, und zwar hier. Beachte mal "Reply #9". Obwohl "UTF8" standardmäßig eingestellt sein soll, muss es mit angegeben werden.
Probiere mal folgende beiden Kommandos:
exiftool.exe -charset IPTC=UTF8 -city=Köln -lang de C:\Temp\K-Dom.jpg dann
exiftool.exe C:\Temp\K-Dom.jpg -w! .txt .
Wenn du meine Lösung mit Delphi verwendest, dann musst du  -charset IPTC=UTF8 nochmal explizit angeben:
exiftool.exe -k -a -u -g1 -lang de -charset IPTC=UTF8 C:\Temp\K-Dom.jpg

Geändert von Benmik (18. Dez 2017 um 19:35 Uhr) Grund: Lösung gefunden
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz