Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   #0 durch "nichts" ersetzen (https://www.delphipraxis.net/153737-0-durch-nichts-ersetzen.html)

Bernhard Geyer 14. Aug 2010 23:04

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Helmi (Beitrag 1042084)
Dort ersetz ich #0 durch #32 (Leerzeichen)
Wie kann ich aber das #0 durch nichs ersetzen? - also komplett löschen?

Hört sich danach an das du eine Unicode-Textedatei vor dir hast. Bedenke das dein "schöne" Idee das €-Zeichen zerschießt!

Helmi 15. Aug 2010 10:13

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1042257)
Zitat:

Zitat von Helmi (Beitrag 1042084)
Dort ersetz ich #0 durch #32 (Leerzeichen)
Wie kann ich aber das #0 durch nichs ersetzen? - also komplett löschen?

Hört sich danach an das du eine Unicode-Textedatei vor dir hast. Bedenke das dein "schöne" Idee das €-Zeichen zerschießt!

Nein, nein :-)

Ich hab keine Unicode-Textdatei vor mir!
Ich hab eine Datei aus einer Siemens-Steuerung, die ich versuche auszulesen.
Und diese hat lauter #0´s drin.

Bernhard Geyer 15. Aug 2010 22:11

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Helmi (Beitrag 1042283)
Ich hab eine Datei aus einer Siemens-Steuerung, die ich versuche auszulesen.
Und diese hat lauter #0´s drin.

Wird das gleiche sein. Die Steuerungsdatei speichert Texte als Unicodestrings.

Helmi 16. Aug 2010 05:13

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1042433)
Zitat:

Zitat von Helmi (Beitrag 1042283)
Ich hab eine Datei aus einer Siemens-Steuerung, die ich versuche auszulesen.
Und diese hat lauter #0´s drin.

Wird das gleiche sein. Die Steuerungsdatei speichert Texte als Unicodestrings.

Interessant dass du die Datei besser kennst als ich!
Aber ich muss dir wiederrum wiedersprechen, das ist keine UniCode-Datei!
Und die Texte werden auch nicht als Unicode-Strings gespeichert!

alzaimar 16. Aug 2010 06:32

AW: #0 durch "nichts" ersetzen
 
Hier noch eine Version, die direkt auf dem String arbeitet:
Delphi-Quellcode:
j:=0;
For i:=1 to Length(s) do
  if s[i]<>#0 then begin
    inc(j);
    s[j] := s[i];
  end;

SetLength (S,j);

Bernhard Geyer 16. Aug 2010 07:54

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Helmi (Beitrag 1042442)
Interessant dass du die Datei besser kennst als ich!
Aber ich muss dir wiederrum wiedersprechen, das ist keine UniCode-Datei!
Und die Texte werden auch nicht als Unicode-Strings gespeichert!

Und Siemens Implementiert ihre Software so das Datei immer mit 0-Bytes an jeder zweiten Stelle gespeichert werden - Ist ja auch einfacher zu implementieren.

Aber kannst du dafür sorgen das das €-Zeichen in der Datei liegt? Damit könnte man Unicode ausschließen.

Helmi 16. Aug 2010 15:54

AW: #0 durch "nichts" ersetzen
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1042460)
Zitat:

Zitat von Helmi (Beitrag 1042442)
Interessant dass du die Datei besser kennst als ich!
Aber ich muss dir wiederrum wiedersprechen, das ist keine UniCode-Datei!
Und die Texte werden auch nicht als Unicode-Strings gespeichert!

Und Siemens Implementiert ihre Software so das Datei immer mit 0-Bytes an jeder zweiten Stelle gespeichert werden - Ist ja auch einfacher zu implementieren.

Aber kannst du dafür sorgen das das €-Zeichen in der Datei liegt? Damit könnte man Unicode ausschließen.

Das €-Zeichen liegt mit 100%iger Sicherheit nicht in der Datei!

himitsu 16. Aug 2010 16:11

AW: #0 durch "nichts" ersetzen
 
Dennoch wäre es wohl einfacher/sicherer, den Text in einen WideString zu kopieren oder nach Ansi umzuwandeln MSDN-Library durchsuchenWideCharToMultiByte

Helmi 16. Aug 2010 16:24

AW: #0 durch "nichts" ersetzen
 
Lieber nicht,

da ich die Daten so wie sie abgelegt sind brauche und lieber unverändert/unverwandelt lasse.
(Sonst gibts Schläg von meinen Kollegen, und wer will mir das schon antun?)

himitsu 16. Aug 2010 16:36

AW: #0 durch "nichts" ersetzen
 
Also doch WideString, denn beim Löschen/Ersetzen der #0 veränderst du das ja. :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:17 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz