Java: Wie man irgendein Objekt in eine String-Darstellung der Daten konvertiert

8

Ich versuche, Code zu schreiben, der jedes Objekt übernimmt und es in eine String-Repräsentation dieses Objekts konvertiert. Die Serialisierung enthält keine vorübergehenden Eigenschaften und toString () ist normalerweise eine Speicheradresse für das Objekt. Ich kann nicht erwarten, dass das Objekt eine sinnvolle toString () definiert oder implementieren Serializable.

Gibt es eine Möglichkeit, die Daten in einem Objekt zu bestimmen und in einen String zu konvertieren? Ich wäre bereit, etwas zu schreiben, um durch die Klasse zu gehen und Reflexion zu verwenden, um Daten zu finden, wenn es sein muss, aber ich hoffte, etwas etwas einfacher zu finden.

Irgendwelche Vorschläge würden geschätzt werden. Danke.

    
Chad Cook 04.06.2010, 17:18
quelle

4 Antworten

11

Schnapp dir apache's commonns-lang. Es gibt ein ReflectionToStringBuilder , mit dem die Reflektion durchgeführt wird für Sie string.

Es akzeptiert auch Styles, damit Sie die Ausgabe anpassen können.

    
taer 04.06.2010, 17:23
quelle
5

XStream ist eine weitere Möglichkeit, XML aus Ihren Objekten zu erzeugen.

    
Dolph 04.06.2010 17:23
quelle
3

XMLEncoder könnte geeignet sein. Es serialisiert das Objekt in XML, das für Menschen lesbar ist.

    
Bozho 04.06.2010 17:20
quelle
2

Die Java-Reflektions-API ist eine ziemlich mächtige Art, in das Objekt hineinzuspähen. Sie können es verwenden, um einen benutzerdefinierten Konverter zu schreiben, um die Informationen in Ihr Lieblingsformat zu extrahieren.

Sie können auch javas Marshaller API verwenden, um es in straight up XML zu konvertieren. Ссылка

    
LoudNPossiblyWrong 04.06.2010 17:25
quelle

Tags und Links