AGB  ·  Datenschutz  ·  Impressum  







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

TStrings maximale Länge

Ein Thema von Tommy99 · begonnen am 17. Nov 2012 · letzter Beitrag vom 17. Nov 2012
Antwort Antwort
Tommy99

Registriert seit: 13. Feb 2007
Ort: Laupheim
24 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 13:56
ich glaube nicht, dass es mit dem #0 zusammenhängt.

Es handelt sich hierbei um eine TXT Datei und über suchen kann ich keinen #0 Eintrag finden.

Zum Testen habe ich den Inhalt je Zeile verkürzt:

TStringTest.Add(Copy(Dateiinhalt,1,10))

Dann schafft er ein paar Zeilen mehr in die Variable aufzunehmen, bricht dann aber auch ab.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 13:59
Wenn die Datei nicht zu geheim ist, dann packe die in ein Zip-File und häng die hier mal dran.
(evtl. ist es auch ein Codepage/Encoding Problem)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:03
kennst du das Programm TextPad? Gibt es auch als Shareware. Ansonsten tut auch jeder Hexeditor. Zumindest kann man mit TextPad auch binär laden und da genau prüfen ob eine Null da ist. Ich glaube nicht, dass ein normaler Editor eine Null findet. Dann weißt due es genau.

Übrigens, was passiert wenn du es in ein Memo lädst? Mach aber vorher WordWrap auf False.
  Mit Zitat antworten Zitat
Tommy99

Registriert seit: 13. Feb 2007
Ort: Laupheim
24 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:14
Ok, das wars,...

Mit TexPad habe ich die #0 gefunden,...

Danke für Eure Hilfe !!!!
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:21
Ok, das wars,...

Mit TexPad habe ich die #0 gefunden,...

Danke für Eure Hilfe !!!!
Dass man aber auch immer erst mit dem großen Knüppel drohen muss
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:39
Shit, und ich hab noch etwas auf die Schnelle geprogt. Wir sind hier in einem Programmierforum, ist doch lächerlich, dass wir fremde Programme für sowas brauchen:

Delphi-Quellcode:
function LoadStringFromFile(sInFile: String; var sFileString: String): Boolean;
var
  FileStream: TFileStream;
begin
  Result := False;
  if not FileExists(sInFile) then Exit;
  FileStream := TFileStream.Create(sInFile, fmOpenRead);
  try
    if FileStream.Size <> 0 then begin
      SetLength(sFileString, FileStream.Size);
      FileStream.Read(sFileString[1], FileStream.Size);
      Result := True;
    end;
  finally FileStream.Free end;
end;

procedure TForm1.Button1Click(Sender: TObject);
const
  SuchZeichen = #0;
var
  s: String;
  k: Integer;
begin
  with OpenDialog1 do
  begin
    if Execute then
    begin
      if not LoadStringFromFile(FileName, s) then
      begin
        MessageDlg('Keine Datei geladen', mtError, [mbOK], 0);
        Exit;
      end;

      k := 0;
      while Pos(SuchZeichen, s) > 0 do
      begin
        s[Pos(SuchZeichen, s)] := '~';
        Inc(k);
      end;

      ShowMessage(Format('Zeichen "%s" %d mal gefunden.', [SuchZeichen, k]));
    end;
  end;
end;
Zwar zusammengebastelt, aber wer behauptet, dass es immer ein Programm sein muß.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.230 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 15:05
Shit, und ich hab noch etwas auf die Schnelle geprogt. Wir sind hier in einem Programmierforum, ist doch lächerlich, dass wir fremde Programme für sowas brauchen:
...
Zwar zusammengebastelt, aber wer behauptet, dass es immer ein Programm sein muß.
Gut nur das dein Programm bei den letzten 5 Delphi-Versionen nicht korrekt funktioniert.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#8

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 15:11
Wieso das?

Edit:

Achso
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.230 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:05
ich glaube nicht, dass es mit dem #0 zusammenhängt.

Es handelt sich hierbei um eine TXT Datei und über suchen kann ich keinen #0 Eintrag finden.
Solange du Texteditoren verwendest wirst du auch keine #0-Einträge finden können da diese Texteditoren diese Suchfunktionalität gar nicht bieten.
Du brauchst hier einen Hex-Editor und musst je nach codiertung der Textdatei nach $00 bzw. $0000 suchen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: TStrings maximale Länge

  Alt 17. Nov 2012, 14:09
ich glaube nicht, dass es mit dem #0 zusammenhängt.

Es handelt sich hierbei um eine TXT Datei und über suchen kann ich keinen #0 Eintrag finden.
Solange du Texteditoren verwendest wirst du auch keine #0-Einträge finden können da diese Texteditoren diese Suchfunktionalität gar nicht bieten.
Du brauchst hier einen Hex-Editor und musst je nach codiertung der Textdatei nach $00 bzw. $0000 suchen.
Oder auch Notepad++, der kann auch optional die normal nicht sichtbaren Zeichen hervorheben.
Zudem wird die Datei auch dahingehend analysiert (soweit möglich) um welche Codierung es sich handelt.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  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 10:37 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