AGB  ·  Datenschutz  ·  Impressum  







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

PCHarReplace

Offene Frage von "Garby"
Ein Thema von Garby · begonnen am 10. Dez 2004 · letzter Beitrag vom 14. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#1

PCHarReplace

  Alt 10. Dez 2004, 13:45
Hallo,

hat jemand eine Funktion zur Hand, die das gleiche mit PCHars macht, wie StringReplace mit Strings?

Danke
Garby
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von Manne
Manne

Registriert seit: 8. Okt 2003
Ort: Hirrlingen
82 Beiträge
 
Delphi 7 Personal
 
#2

Re: PCHarReplace

  Alt 10. Dez 2004, 13:55
Nicht getestet müsste aber funktionieren.
(hab eine Min. bei Google suchen müssen)
Code:
function ReplaceCharFast (const s: string;
  ch1: char; ch2: char): string;
var i: integer;
begin
  Result := s;
  for i := 1 to length (Result) do
    if Result [i] = ch1 then
      Result [i] := ch2;
end;
So 6 wie wir 5 gibt es keine 4 andere, denn wir 3 sind die 2 1sten
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#3

Re: PCHarReplace

  Alt 10. Dez 2004, 13:59
Hallo,

vielleicht habe ich mich nicht klar genug ausgedrückt.
Ich muss in einer Zeichenkette bestimmte Teilzeichenketten duch neue Zeichenketten ersetzen.
Diese Zeichenketten müssen variabler Länge sein.

Deine Funktion arbeitet mit Chars.

Danke
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: PCHarReplace

  Alt 10. Dez 2004, 14:00
Hi,
sind Strings und PChars nicht zuweisungskompatibel?
Dani H.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#5

Re: PCHarReplace

  Alt 10. Dez 2004, 14:02
Strings musst du erst zu PChar casten, aber umgekehrt geht es ohne Probleme/Casts.
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#6

Re: PCHarReplace

  Alt 10. Dez 2004, 14:07
Genau diesen Cast zu String möchte ich aber vermeiden.

Weiß sonst noch jemad was?

Garby
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: PCHarReplace

  Alt 10. Dez 2004, 14:39
Was spricht gegen den Cast?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#8

Re: PCHarReplace

  Alt 10. Dez 2004, 14:47
..dass im PChar Binärdaten stehen, die durch einen Typecast verändert werden.
Oder sehe ich das falsch?
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: PCHarReplace

  Alt 10. Dez 2004, 14:49
Nicht das ich wüßte. Ein PChar ist einfach nur ein nullterminierender String.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#10

Re: PCHarReplace

  Alt 10. Dez 2004, 15:15
Vielleicht kurz etwas zum Hintergrund.

Ich entwickle eine DB-Komponente für Mysql.
Dazu verwende ich die libmysql.dll und es funktioniert alles gut.

Das einzige Problem sind BLOBS.
Ich habe eine Komponente, die in einem BLOB Feld Binärdaten speichern will.
Bisher habe ich intern alles über Strings gehandelt, aber leider funktioniert das nicht mit dieser Komponente.

aus der OH der Komponente:
Zitat:
...the database field must have BINARY type (i.e. must have ability to store arbitrary binary data, without conversion and filtering of characters).

Using MEMO is not recommended and impossible, if you want to save Unicode, controls, pictures and tables in binary mode
Das Problem ist auch, dass bei einer Umwandlung nach String zwar Daten gespeichert werden, aber total falsch;

Ich füge die Daten direkt über einen INSERT befehl mittels der Funktion mysql_real_query in die DB ein.
Diese Funkton erwartet einen PChar als SQL String.

Also irgendwie muss das doch funktionieren, oder wie machen das andere

Danke
Garby
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 11:48 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