AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Vermutlich Hex Daten Umwandeln

Ein Thema von Dumpfbacke · begonnen am 31. Mär 2019 · letzter Beitrag vom 8. Apr 2019
Antwort Antwort
Seite 4 von 4   « Erste     234
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.016 Beiträge
 
Delphi 2009 Professional
 
#31

AW: Vermutlich Hex Daten Umwandeln

  Alt 3. Apr 2019, 20:04
So wie ich die Daten auf dem Screenshot sehe, würde ich sagen, dass IBExpert einfach die Steuerzeichen ausblendet. Irgendwie so:
Delphi-Quellcode:
var
  b: Byte;
  s: string
begin
  for b in FieldByName('bla').AsBytes do
  if b < 32 then
  s := s + Char(b);
end;
Die in Westeuropa verwendete 8-Bit-Kodierung („ANSI“) ist übrigens Windows-1252 und nicht ISO-8859-1, weil bei letzterer bei $80-$9F noch mehr Steuerzeichen liegen, die keinen interessieren, und man mit ISO-8859-1 nicht in der Lage ist, einen französischen Text oder vernünftige Interpunktion zu speichern. Unicode U+0 bis U+FF entsprechen aber ISO-8859-1.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#32

AW: Vermutlich Hex Daten Umwandeln

  Alt 3. Apr 2019, 21:31
@Dumpfbacke,

genau das Privat suche ich.
Hattest du mal meinen Vorschlag aus Post#4 probiert?
Da kommt genau Privat raus.
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#33

AW: Vermutlich Hex Daten Umwandeln

  Alt 3. Apr 2019, 22:32
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.SysUtils;

function BytesToHexView(const ABytes: TBytes): string;
var
  hex, str: string;
  idx, len, len2: Integer;
  b: Byte;
begin
  Result := string.Empty;
  len := Length(ABytes);
  hex := string.Empty;
  str := string.Empty;

  if len mod 16 = 0 then
    len2 := len
  else
    len2 := len + 16 - len mod 16;

  for idx := 1 to len2 do
  begin
    if idx <= len then
    begin
      b := ABytes[idx - 1];
      hex := hex + IntToHex(b, 2) + ' ';
      if b < 32 then
        str := str + '.'
      else
        str := str + Chr(b);
    end
    else
    begin
      hex := hex + ' ';
      str := str + ' ';
    end;
    if idx mod 16 = 0 then
    begin
      if not string.IsNullOrEmpty(Result) then
        Result := Result + sLineBreak;
      Result := Result + hex + '| ' + str;

      hex := string.Empty;
      str := string.Empty;
    end;
  end;
end;

begin
  try
    Writeln(BytesToHexView([ //
      $05, $03, $01, $01, $04, $02, $00, $00, $00, $00, $00, $00, $01, $01, $04, $02, //
      $00, $00, $00, $00, $00, $00, $01, $01, $04, $02, $00, $00, $00, $00, $00, $00, //
      $01, $01, $04, $02, $00, $00, $00, $00, $00, $00, $01, $01, $04, $02, $00, $00, //
      $00, $00, $00, $00, $01, $01, $04, $02, $00, $00, $00, $00, $00, $00, $01, $01, //
      $04, $02, $06, $00, $00, $00, $50, $00, $72, $00, $69, $00, $76, $00, $61, $00, //
      $74, $00, $00, $00, $02, $01, $00, $01, $FA, $B8, $8A, $42, $FB, $53, $48, $80]));
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
  Readln;

end.
Code:
05 03 01 01 04 02 00 00 00 00 00 00 01 01 04 02 | ................
00 00 00 00 00 00 01 01 04 02 00 00 00 00 00 00 | ................
01 01 04 02 00 00 00 00 00 00 01 01 04 02 00 00 | ................
00 00 00 00 01 01 04 02 00 00 00 00 00 00 01 01 | ................
04 02 06 00 00 00 50 00 72 00 69 00 76 00 61 00 | ......P.r.i.v.a.
74 00 00 00 02 01 00 01 FA B8 8A 42 FB 53 48 80 | t.......ú¸?BûSH?
  Mit Zitat antworten Zitat
Dumpfbacke

Registriert seit: 10. Mär 2005
Ort: Mitten in Deutschland
329 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#34

AW: Vermutlich Hex Daten Umwandeln

  Alt 7. Apr 2019, 19:57
@Dumpfbacke,

genau das Privat suche ich.
Hattest du mal meinen Vorschlag aus Post#4 probiert?
Da kommt genau Privat raus.


Ja habe ich funktioniert aber leider auch nicht.
Tanja
  Mit Zitat antworten Zitat
Dumpfbacke

Registriert seit: 10. Mär 2005
Ort: Mitten in Deutschland
329 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#35

AW: Vermutlich Hex Daten Umwandeln

  Alt 7. Apr 2019, 20:04
Code:
05 03 01 01 04 02 00 00 00 00 00 00 01 01 04 02 | ................
00 00 00 00 00 00 01 01 04 02 00 00 00 00 00 00 | ................
01 01 04 02 00 00 00 00 00 00 01 01 04 02 00 00 | ................
00 00 00 00 01 01 04 02 00 00 00 00 00 00 01 01 | ................
04 02 06 00 00 00 50 00 72 00 69 00 76 00 61 00 | ......P.r.i.v.a.
74 00 00 00 02 01 00 01 FA B8 8A 42 FB 53 48 80 | t.......ú¸?BûSH?

Hallo Schokhase,
vielen Dank für den Code von Dir. Wenn das so gehen würde wäre es einm Traum und ich würde endlich weiterkommen mit meinen Programm. Genau das Ergebnis möchte ich haben. Ich habe jeodch noch ein Problem damit. Wie rufe ich die Funktion denn auf ? Ich hole mit die Daten aus der Datenbank (Memo Feld) und packe die in ein String aber die Funktion erwarete das ganze ja in Byte form. Kannst du mir hier noch mal auf die sprünge helfen ? Ich verzweifele so langsam an dem Problem.

Danke Tanja.
Tanja
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#36

AW: Vermutlich Hex Daten Umwandeln

  Alt 8. Apr 2019, 08:57
Ich hole mit die Daten aus der Datenbank (Memo Feld) und packe die in ein String aber die Funktion erwarete das ganze ja in Byte form. Kannst du mir hier noch mal auf die sprünge helfen ? Ich verzweifele so langsam an dem Problem.
Zeig mal bitte die Zeile.
Ist es sowas wie XYZField.AsString?
Wenn ja, versuch mal anstattdessen XYZField.AsBytes.
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#37

AW: Vermutlich Hex Daten Umwandeln

  Alt 8. Apr 2019, 09:10
Schau Dir bitte mal https://sourceforge.net/projects/atviewer/ an. Die Komponenten bringt das Gewünschte von Haus aus mit.

Daneben enthält sie eine automatische "Inhaltserkennung" und kann von daher auch HTML, Text, Bilder ... ggfls. korrekt anzeigen.

Ihr ist es quasi egal, was man ihr an Inhalt unterschiebt. Sie schaut, ob's was bekanntes ist, wenn nein erfolgt die Anzeige in der von Dir gewünschten Form.

Natürlich ist das konfigurierbar, so dass die Anzeige auch grundsätzlich auf die von Dir gewünschte Form eingeschrämkt werden kann.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 21:08 Uhr.
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