Xml nicht überschreiben!

deddeda

Mitglied
Hallo Zusammen

Ich habe eine Klasse erstellt welche ein XML-File erzeugt. Die Methode writeXML wird aufgerufen bei Knopfdruck eines Gui's. Dort werden auch die Parameter mitgegeben.
Java:
package Praktikum_Anruf;



import java.io.File;
import java.security.Timestamp;
import java.sql.Date;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.UUID;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
 


import javax.swing.text.JTextComponent;

import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
 
public class Xml {


    static Calendar cal = Calendar.getInstance ();
	

    
    public static void writeXML(String origin, String target, String feature){
    	  try {
    			DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
    			DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
    	 
    			// root elements
    			Document doc = docBuilder.newDocument();
    			Element rootElement = doc.createElement("LynCallForwardSettings");
    			doc.appendChild(rootElement);
    	 
    			// Anrufe umleiten zu: elements
    			Element test = doc.createElement("OriginUserName");
     			test.appendChild(doc.createTextNode(origin));
    			rootElement.appendChild(test);
    			
    			
    			Element lastname = doc.createElement("TargetUserName");
    			lastname.appendChild(doc.createTextNode(target));
    			rootElement.appendChild(lastname);
    			
    			Element callForwarFeature = doc.createElement("CallForwardFeature");
    			callForwarFeature.appendChild(doc.createTextNode(feature));
    			rootElement.appendChild(callForwarFeature);
    	 


    			// write the content into xml file
    			TransformerFactory transformerFactory = TransformerFactory.newInstance();
    			Transformer transformer = transformerFactory.newTransformer();
    			DOMSource source = new DOMSource(doc);

    			
    			//Dateiname
    			String pfad = ReadXml.getSavePath();
    			System.out.println(pfad + "-----------------------------------");
    			
    					
    					
    			StreamResult result = new StreamResult(new File
    					(pfad	+
    								cal.get( Calendar.DAY_OF_MONTH ) +
    	                "_" +		(cal.get( Calendar.MONTH )  +1) +
    	                "_" + 		cal.get( Calendar.YEAR ) +
    	                "_"	+		cal.get( Calendar.HOUR_OF_DAY ) + 
    					"_" +		cal.get( Calendar.MINUTE ) + 
    					"_" +       cal.get( Calendar.SECOND ) + 
    					"_" +       (cal.get( Calendar.MILLISECOND )  +1) + 
    					".xml"));
    	 
    			// Output to console for testing
    			// StreamResult result = new StreamResult(System.out);
    	 
    			transformer.transform(source, result);
    	 
    			

    			System.out.println("File saved!");
    		
    			
    		  } catch (ParserConfigurationException pce) {
    			pce.printStackTrace();
    		  } catch (TransformerException tfe) {
    			tfe.printStackTrace();
    		  }
    }
    
	public static void main(String args[]) {
		
		Gui gui = new Gui();
		
	
	}
	
	
}

Hier der Aufruf in der anderen Klasse:
Java:
		btnFunktion.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent e) {

				if (rdbtnAnrufumleitungaktivieren.isSelected()) {
					lblNewLabel1.setVisible(false);
					lblNewLabel2.setVisible(false);
					lblNewLabel3.setVisible(false);
					lblNewLabel.setVisible(true);
					verticalBox_1.setVisible(true);
					setFunktion("1");

				} else if (rdbtnSatusDerAnrufumleitung.isSelected()) {
					lblNewLabel1.setVisible(true);
					lblNewLabel2.setVisible(false);
					lblNewLabel3.setVisible(false);
					lblNewLabel.setVisible(false);
					verticalBox_1.setVisible(true);
					setFunktion("3");
				} else if (rdbtnAnrufumleitungdeaktivieren.isSelected()) {
					lblNewLabel1.setVisible(false);
					lblNewLabel2.setVisible(true);
					lblNewLabel3.setVisible(false);
					lblNewLabel.setVisible(false);
					verticalBox_1.setVisible(true);
					setFunktion("2");
				} else {
					lblNewLabel1.setVisible(false);
					lblNewLabel3.setVisible(true);
					lblNewLabel2.setVisible(false);
					lblNewLabel.setVisible(false);
					verticalBox_1.setVisible(true);

				}
				
				try{
					//Testet ob auswahl getroffen ist
				if (getFunktion().equalsIgnoreCase(null)) {
					
				}
				else{
					Xml.writeXML(getTextField(), getTextField1(), getFunktion());
					
				}
				}catch(Exception e1){
					System.out.println("Keine Auswahl getroffen");
				}

				
				
			};
			
		
		});


Als Dateiname brauche ich immer die aktuelle Zeit plus Datum, alles funktioniert so weit. Doch leider wird das File immer nur überschrieben solange ich das Gui geöffnet habe. Erst wenn ich das Gui schliesse wird wieder eine neue Datei erzeugt. Was muss ich ändern, dass die Datei nicht immer überschrieben wird.?

Vielen Dank und Gruss

Dimitri
 

Harry Kane

Top Contributor
Vor dem Speichern musst du deine Calendar-Instanz auf die aktuelle Systemzeit setzen:
Java:
cal.setTimeInMillis(System.currentTimeMillis())
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M SOAP-Client funktioniert plötzlich nicht mehr XML & JSON 2
I ID von Referenz speichern, nicht ganzes Objekt XML & JSON 1
S XML Datei speichern nicht möglich XML & JSON 13
T Fehler: Hauptklasse com.sun.tools.internal.xjc.XJCFacade konnte nicht gefunden oder geladen werden XML & JSON 6
W jaxb-api XML Feld nicht gesendet setzt das Defaultvalue nicht XML & JSON 3
M dom4j detach funktioniert nicht XML & JSON 0
H XML Element `Class` wird nicht gelesen XML & JSON 2
C javascript in .html Funktioniert, in .xhtml nicht mehr XML & JSON 0
S xml mit SAX. Sonderzeichen belassen, nicht umsetzen. No ">" in ">" XML & JSON 1
GianaSisters Webservice Integer/Double bitte nicht mitübertragen XML & JSON 2
S Apache Ant - Fehler: Hauptklasse konnte nicht gefunden oder geladen werde XML & JSON 1
H Apache fop1.1 -> Funktion last() wird nicht erkannt XML & JSON 0
S NodeList rückwärts scannen, alle Parent Nodes ausgeben rekursiv und nicht-reukrsiv XML & JSON 0
E Wie geht man mit Textfiles um, die nicht in Form von XML vorliegen? XML & JSON 4
J XML - Datei wird nicht ganz angezeigt XML & JSON 2
S DTD und XML lassen sich nicht verknüpfen XML & JSON 2
S XML file lässt sich in Eclipse nicht erstellen XML & JSON 2
N Java XML schreiben funktioniert nicht XML & JSON 1
F.S.WhiTeY JAXB: Schema nicht "erben" XML & JSON 2
S Node.setTextContent funktioniert nicht XML & JSON 3
K Verwirrung: Per SSH werden manche Befehle ausgeführt, manche nicht XML & JSON 10
Helgon JDOM schreibt nicht XML & JSON 2
G xml, jdom "Entität wurde referenziert aber nicht deklariert." XML & JSON 4
K Main Methode wird nicht aufgerufen XML & JSON 15
H XML via XSD Validierung nicht möglich? XML & JSON 2
S XML-Serialisierung klappt nicht XML & JSON 5
H Nicht wohlgeformtes XML mit SAX parsen XML & JSON 2
T XML JTree änder sich nicht XML & JSON 2
C DOM: Attribute nicht in alphabetischer Reihenfolge schreiben XML & JSON 3
A XML schaffe es nicht Nodes auszulesen XML & JSON 5
G Wieviele Elemente von TagName, ich brings nicht hin XML & JSON 5
M XSD - Child Element möglich, aber nicht zwingend erforderlich XML & JSON 6
_dp Java XML Parse error: findet end-tags nicht XML & JSON 10
sylo Nach Export wird SAXParseException nicht mehr geworfen XML & JSON 4
aze JaxB: Nullelemente in Array nicht anzeigen XML & JSON 3
G XPath - replace function funktioniert nicht XML & JSON 3
B Unterschied? Beides Attribut oder nicht? XML & JSON 2
aze JaxB Elemente in LinkedHashSet werden nicht wiededergegeben XML & JSON 3
G Nodes in Document kopieren, nur die Childs, die noch nicht existieren XML & JSON 7
E Wieso liefert dieser XPATH-Ausdruck nicht die richtige Anzahl Treffer? XML & JSON 8
L XML Dokument auslesen funktioniert nicht richtig XML & JSON 2
S finde den Schema-Compiler "xjc" nicht XML & JSON 4
N XML will nicht weder JAXB noch XStream XML & JSON 8
P PHP-Seite anfragen, aber nicht darstellen XML & JSON 5
P XSD Schema: Konstanten mit "fixed" erzeugen geht nicht ??? XML & JSON 3
C Validierung klappt nicht mit Schema XML & JSON 2
F XML Suche funktioniert nicht XML & JSON 5
D nicht (ganz) valiedes XML einlesen! XML & JSON 19
C jdom.Element nicht vorhanden? XML & JSON 4
C XPath in JDOM klappt nicht XML & JSON 2
J Daten werden in ArrayList geschrieben, AL nicht in .xml ? XML & JSON 5
V XMLEncoder: Attribute nicht serialisieren XML & JSON 2
R iReport will nicht XML & JSON 4
T XML-Parsing: Whitespace zw. Elementen wird nicht ignoriert XML & JSON 4
P nicht wohl-geformte XML in wohlgeformte XML umwandeln XML & JSON 5
8 SAXParser Problem, startElement wird nicht ausgeführt XML & JSON 2
M Xerces -Parsen mit einer externen Schemadatei geht nicht XML & JSON 2
H xml - Schema : warum passen die nicht zueinander XML & JSON 2
J [Newbie] [JDOM] Element aus XML entfernen klappt nicht XML & JSON 4
P SAXBuilder wird von Eclipse nicht als ObjektTyp erkannt XML & JSON 3
B JDom -- getChild() liefert nicht nachvollziehbar null XML & JSON 2
K XML to file geht nicht :( XML & JSON 4
S Element addContent(Element) gibts nicht XML & JSON 5
M mit JDOM XML-Datei einlesen, die nicht "well-formed&quo XML & JSON 3
D XML Datei wird nicht gefunden XML & JSON 4
C xpath funktioniert nicht XML & JSON 5
M attribute funken nicht XML & JSON 3
B Validieren meines XMLs mit meiner DTD funktioniert nicht XML & JSON 9
M getChildren gibt nicht alle children zurück XML & JSON 3
P zugriff auf gewuenschte elemente klapp nicht. XML & JSON 3
T Warum passt diese DTD-Zeile nicht zu diesem Dokument? XML & JSON 7
A Element an einer bestimmten Stelle einfügen (nicht am Ende) XML & JSON 4
G mit Transformer.transform ein Element überschreiben XML & JSON 2

Ähnliche Java Themen

Neue Themen


Oben