Einzelnen Beitrag anzeigen

Incocnito

Registriert seit: 28. Nov 2016
223 Beiträge
 
#5

AW: Probleme beim Arbeiten mit XML und Double-Werten

  Alt 17. Mär 2022, 14:01
...
Tipp: Bau dir für IXMLNode einen Record-Helper, welcher ein .AsFloat-Property hat und wo intern in beiden Richtungen gleich gearbeitet wird....
Da wir gerade InHouse genau dieses Problem auch haben, hatte ich überlegt diesen Record-Helper zu bauen.

Aber ein Record-Helper geht scheinbar für Interfaces nicht. TXmlNode macht auch keinen Sinn.

Hat da jemand noch einen Trick. Ich komme gerade nicht drauf.

Nur mal so als Grundidee:
Delphi-Quellcode:
unit XmlHelper;

interface

uses
  System.SysUtils,
  Xml.XMLDoc;

type
  XmlNodeHelper = record helper for IXmlNode
    Function AsFloat() : Extended;
  end;

var
  XmlFormatSetting : TFormatSettings;

implementation

{ XmlNodeHelper }

Function XmlNodeHelper.AsFloat() : Extended;
var
  sValue : String;
begin
  sValue := Self.Text; // <- Einfach nur zu Debugging-Zwecken in extra Variable
  Result := StrToFloatDef(sValue, 0, XmlFormatSetting);
end;

initialization
  XmlFormatSetting := TFormatSettings.Create('en-US');

end.
Liebe Grüße
Incocnito
  Mit Zitat antworten Zitat