Point2D.double nach XML

Status
Nicht offen für weitere Antworten.

A.T.

Bekanntes Mitglied
Hallo,
ich habe schon wieder eine Frage. Wird wohl öfter vorkommen in nächster Zeit...

Ich erzeuge mir ein Point2D.Double Feld mit Werten. Handelt sich hier um Messwerte für die Signalverarbeitung.
Code:
Point2D.Double[] points = new Point2D.Double[500];

for (int i = 0; i < points.length; i++) {
    points[i] = new Point2D.Double();
    points[i].setLocation((double)i,(double)500-i);
    System.out.println(points[i].getX()+ " "+ points[i].getY());
}

Die Werte werden richtig ausgegeben.

Ich möchte jetzt dieses Feld in eine XML Dateispeichern. Damit man die anderweitig verwenden kann aber auch um Daten die aus neuen Messungen kommen verwenden zu können.

Ein normales Point Feld kann ich ohne Problem in eine XML- Datei schreiben. Das Problem ist aber das es mit Point2D.Double Feldern nicht funktioniert! Warum ist das so?
Code:
Point[] points = new Point[500];
for (int i = 0; i < points.length; i++) {
    points[i] = new Point(i, 500-i);
}

FileOutputStream fos;
try {
    fos = new FileOutputStream("test.xml");
    XMLEncoder xmlEncoder = new XMLEncoder(fos);
    xmlEncoder.writeObject(points);
    xmlEncoder.close();
} 
catch (FileNotFoundException e2) {
    // TODO Auto-generated catch block
    e2.printStackTrace();
} 
catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Mit hilfe des Point Feldes kann ich leider nur int-Werte abspeichern ich bräuchte aber double. Also muss ich Point2D.Double verwenden.
Gibt es eine Möglichkeit dies in XML zu schreiben?

Danke schon mal für eure Hilfe!

Gruß Andreas
 

A.T.

Bekanntes Mitglied
Hallo byto,
danke für deinen Tip! Habe zuerst darüber nachgedacht es so zu machen. Bin dann aber durch einen Tip auf eine andere Lösun gekommen. Und zwar ist Point2D.Double nicht serializable. Deshalb hat es nicht funktioniert. Wenn man jetzt wie unten gezeigt eine Classe erzeugt die von Point2D.Double erbt und Serializable implementiert dann klappt das!

Code:
import java.awt.geom.Point2D;
import java.io.Serializable;


public class MyPoint2D extends Point2D.Double implements Serializable {

  
   public double getX() {
        return super.x;
    }

    public double getY() {
        return super.y;
    }

    public void setX(double x) {
        super.x = x;
    }
    
    public void setY(double y) {
        super.y = y;
    }

    public void setLocation(double x, double y) {
        this.setX(x);
        this.setY(y);
    }

}

Gruß A.T.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W xslt zum Entfernen von unnoetigen Nullkommastellen bei double und float XML & JSON 26
GianaSisters Webservice Integer/Double bitte nicht mitübertragen XML & JSON 2
wofus JSON filtern nach bestimmten Wert XML & JSON 7
Q Konvertierung von json zum Java Objekt nach vorgegebenem Schema XML & JSON 3
R Handler-Wechsel, SAX Parser bricht nach 8192 Byte ab XML & JSON 5
I Newlines nach childs erste ebene (dom) XML & JSON 3
K Docbook tranformieren nach LaTeX XML & JSON 2
sylo Nach Export wird SAXParseException nicht mehr geworfen XML & JSON 4
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
N xml nach Value durchsuchen XML & JSON 8
W String nach XML nach String verwandeln XML & JSON 4
D XML nach BME Cat Norm prüfen? XML & JSON 4
I Editor, der nur Elemente einfuegt, die nach xsd zulaessig XML & JSON 2
S leading whitespaces nach einem XMLOutputter XML & JSON 9
A html-File nach txt-File konvertieren XML & JSON 15
T Newbie Frage. CSS Stylesheet einlesen und suchen nach Tags XML & JSON 6
A Auf der Suche nach Bibliotheken oder wie parsen? XML & JSON 15
M RSS nach WML XML & JSON 9
V Datenverlust nach sortieren (nur beim serialisieren) XML & JSON 4
H Nach einem Attribut suchen und dann löschen XML & JSON 3
M jaxb binding nach set XML & JSON 9

Ähnliche Java Themen

Neue Themen


Oben