AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Text aus Datei laden, Single Quote Problem

Text aus Datei laden, Single Quote Problem

Ein Thema von DieDolly · begonnen am 17. Jun 2019 · letzter Beitrag vom 19. Jun 2019
Antwort Antwort
Seite 2 von 3     12 3   
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#11

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 11:43
Es sei n och erwähnt, dass ich CreateMessageDialog verwende.

Delphi-Quellcode:
MsgStr := WrapText(AText, sLineBreak, ['.', ' ', #9, '-'], 75);
 MsgDlg := CreateMessageDialog(MsgStr, MsgDlgType, MsgDlgBtn, MsgDlgBtnDef);
Nach 75 Zeichen sollte eigentlich umgebrochen werden. Es wird aber eine ungefähr 135 Zeichen lange Zeile angezeigt.
Ohne irgendein ' im String wird auch richtig umgebrochen.

Wenn ich ein '' in die Datei schreibe wird korrekt umgebrochen. Aber dann wird auch ein '' angezeigt. Mit StringReplace das '' durch ' austauschen führt zum ursprünglichen Problem.

Geändert von DieDolly (18. Jun 2019 um 11:59 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#12

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:05
Könnte es mit deiner Umwandlung (UTF8ToWideString) zu tun haben?
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.934 Beiträge
 
Delphi 12 Athens
 
#13

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:09
Der Kommentar zu WrapText in System.SysUtils sagt aber auch:
Zitat:
{ WrapText will scan a string for BreakChars and insert the BreakStr at the
last BreakChar position before MaxCol. Will not insert a break into an
embedded quoted string (both ''' and '"' supported) }
Es sollte also funktionieren, wenn du jeden der Single-Quotes verdoppelst.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#14

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:09
Ich habe gehofft es liegt daran. Aber daran liegt es leider nicht.
Das scheint irgendein tiefliegenderes Problem mit dem CreateMessageDialog zu sein. Von CreateMessageDialog kann ich leider nicht weg.

Wenn ich die Single Quotes verdopplte, dann wird korrekt umgebrochen. Aber dann sehe ich im Resultat auch doppelte Quotes.
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#15

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:12
Ich habe gehofft es liegt daran. Aber daran liegt es leider nicht.
Das scheint irgendein tiefliegenderes Problem mit dem CreateMessageDialog zu sein. Von CreateMessageDialog kann ich leider nicht weg.

Wenn ich die Single Quotes verdopplte, dann wird korrekt umgebrochen. Aber dann sehe ich im Resultat auch doppelte Quotes.
Dein Problem liegt in der Funktion WrapText und nirgendwo anders.

Also, entweder vor dem WrapText die Quotes verdoppeln und danach wieder das Verdoppeln rückgängig machen oder eine andere WrapText verwenden/schreiben.

Schaust du dir eigentlich niemals an, was du in die Funktionsaufrufe übergibst? Dann wäre dir sofort aufgefallen, dass die Umbrüche beim Aufruf von CreateMessageDialog fehlen und es also daran nicht liegen kann.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#16

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:17
Zitat:
Also, entweder vor dem WrapText die Quotes verdoppeln und danach wieder das Verdoppeln rückgängig machen oder eine andere WrapText verwenden/schreiben.

Schaust du dir eigentlich niemals an, was du in die Funktionsaufrufe übergibst? Dann wäre dir sofort aufgefallen, dass die Umbrüche beim Aufruf von CreateMessageDialog fehlen und es also daran nicht liegen kann.
Wieso fährst du mich denn jetzt so an?

Zitat:
dass die Umbrüche beim Aufruf von CreateMessageDialog fehlen und es also daran nicht liegen kann.
Die Umbrüche existieren absichtlich nicht. Was denkst du, warum ich WrapText verwende.

Delphi-Quellcode:
 MsgStr := StringReplace(MsgStr, #39, #39#39, [rfReplaceAll]);
 MsgStr := WrapText(MsgStr, sLineBreak, ['.', ' ', #9, '-'], 75);
 MsgStr := StringReplace(MsgStr, #39#39, #39, [rfReplaceAll]);
Das dauert zum Glück nicht einmal 1 Millisekunde bei mir. Ich hatte mit dem Schlimmsten gerechnet. Ist zwar umständlich aber funktioniert.

Geändert von DieDolly (18. Jun 2019 um 12:20 Uhr)
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#17

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:25
Zitat:
dass die Umbrüche beim Aufruf von CreateMessageDialog fehlen und es also daran nicht liegen kann.
Die Umbrüche existieren absichtlich nicht. Was denkst du, warum ich WrapText verwende.
Aber genau das ist doch das Problem.

Du willst vor dem Aufruf von CreateMessageDialog aktiv Zeilenumbrüche mit WrapText in den Text hineinbringen.
Du vermisst Zeilenumbrüche im MessageDialog.

Und da kommst du nicht auf die Idee, zu schauen, was bei WrapText denn so herauskommt, also dem Dingen, was da Zeilenumbrüche reinbringen soll?

Das lässt mich nur etwas den Kopf schütteln.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#18

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 12:49
Es können nun einmal nicht alle so perfekt sein wie du. Nun aber Ende im Gelände.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#19

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 22:27
Und da kommst du nicht auf die Idee, zu schauen, was bei WrapText denn so herauskommt, also dem Dingen, was da Zeilenumbrüche reinbringen soll?
Ich würde das über das fragliche Zeichen angehen.
1) Was ist denn der Hex-Wert des Zeichens? im verwendeten Zeichensatz!
2) Welche(s) Zeichen (Hex-Wert)/Zeichensatz verhindert den angestrebten Umbruch?
3) Gibt es ein Escape-Zeichen?

Ok ist ganz schön korinthenkackerisch, aber exakt! Und bei der teilweise kreativen Darstellung von Zeichen durch verschiedene Fonts absolut notwendig.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.173 Beiträge
 
#20

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 22:48
Zitat:
Ich würde das über das fragliche Zeichen angehen.
1) Was ist denn der Hex-Wert des Zeichens? im verwendeten Zeichensatz!
2) Welche(s) Zeichen (Hex-Wert)/Zeichensatz verhindert den angestrebten Umbruch?
3) Gibt es ein Escape-Zeichen?
Verstehe ich nicht. Ein Escapezeichen gibt es nicht.
In welchem Zeichensatz das ' ist weiß ich nicht.
  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 20:33 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