AGB  ·  Datenschutz  ·  Impressum  







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

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 1 von 2  1 2      
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

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

AW: Text aus Datei laden, Single Quote Problem

  Alt 17. Jun 2019, 23:40
Ich lese Text aus einer Datei, der dann in meinem Programm angezeigt wird.
Wie denn genau?
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.175 Beiträge
 
#2

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:17
Genau genommen ist es eine INI-Datei. Dort stehen Worte und Sätze so drin, wie sie in der jeweiligen Sprache geschrieben werden. Also kein Escapen oder so.
\' und '''' in der INI-Datei, wie man es bei PHP zum Beispiel macht, habe ich schon versucht.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

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

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:20
Die Frage ist: Wie liest du den Text aus der Datei? Es gibt einen ganzen Haufen von Möglichkeiten und jede hat ihre Eigenarten.
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.175 Beiträge
 
#4

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:25
Hier ein Beispiel
Delphi-Quellcode:
function ReadValue(const AIniFile: TMemIniFile; const Section, Ident: string): string;
begin
 Result := UTF8ToWideString(AIniFile.ReadString(Section, Ident, ''));
end;

LIni := TMemIniFile.Create(LanguageFile);
try
 String123456 := ReadValue(LIni, 'section', 'ident');
finally
 LIni.Free;
end;
Ich jage alles durch ReadValue, um doppelten Code zu vermeiden. UTF8ToWideString steht da, da sonst Umlaute nicht richtig angezeigt werden.
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

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

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:26
@Dolly: Wenn ich dich richtig verstehe ist nicht das einlesen das Problem (der eingelesene Text entspricht 1:1 dem was du aus der Datei erwartest), sondern die spätere Verarbeitung wenn ein
Code:
'
im Text auftaucht. Richtig?

Wäre es dann nicht eine Option die
Code:
'
durch Leerzeichen zu ersetzen (z.B. mittels Stringreplace)?
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#6

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:32
Das Ergebnis stimmt. Aber intern passiert irgendwas bzw passiert irgendwas nicht denn in einem Message Dialog wird die Zeile nicht mehr automatisch umgebrochen, wenn ein ' im String ist. Wenn ich den String hardcoded selbst reinschreibe und '' statt ' verwende klappt alles. Aber ein '' in der Ini-Datei bringt nicht das Resultat wie der hardcoded string.

Durch Leerzeichen ersetzen ist nicht machbar. Es handelt sich um Übersetzungen.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:38
MessageDlg('Test und don''t und son ein mustn''t und bla und Test aber auch ein Test ist mit einem ''Test'' sehr don''t', mtInformation, [mbOK], 0);



Hab damit keine Probleme
Angehängte Grafiken
Dateityp: png dlg.png (3,0 KB, 81x aufgerufen)
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#8

AW: Text aus Datei laden, Single Quote Problem

  Alt 18. Jun 2019, 10:39
Du hast den Text ja auch hardcoded im Programm drin.

Ließ genau diesen aus einer Ini-Datei aus. Das Ergebnis sollte ein anderes sein.

Geändert von DieDolly (18. Jun 2019 um 10:43 Uhr)
  Mit Zitat antworten Zitat
gast2019
(Gast)

n/a Beiträge
 
#9

AW: Text aus Datei laden, Single Quote Problem

  Alt 19. Jun 2019, 04:24
Genau genommen ist es eine INI-Datei. Dort stehen Worte und Sätze so drin, wie sie in der jeweiligen Sprache geschrieben werden. Also kein Escapen oder so.
\' und '''' in der INI-Datei, wie man es bei PHP zum Beispiel macht, habe ich schon versucht.
Zeig doch mal eine Zeile der INI-Datei, die Ärger macht.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#10

AW: Text aus Datei laden, Single Quote Problem

  Alt 19. Jun 2019, 10:51
Nicht die Datei macht ärger sondern einzelne Werte da drin. Beispiele stehen schon im ersten Beitrag.

Das Problem wurde aber schon gehoben. WrapText kam mit dem ' nicht klar. Schade, dass ich jetzt alle ' erst verdoppel muss, nur um sie danach wieder zu normalisieren.
  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 13:47 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