# Datei Speichern unter Dialog - SWT



## mannni10 (24. Okt 2011)

Hallo zusammen,
ich habe mal wieder ein Problem:
Ich habe ein Key Verwaltungsprogramm geschrieben in dem man Benutzern Programme und keys zuweißen kann. Diese werden in einer Tabelle angezeigt, das ganze basiert auf SWT.
Nun habe ich einen .csv - Datei export eingebaut der auch wunderbar klappt, nur den Auswahl Dialog wo man die Datei speichern möchte bekomme ich nicht hin.
So sieht das ganze aus:

private static String getCSV(User user, Application app, Key key){
		String daten = ""; 
		if (user == null){
			daten += ";;;;;;";
		}
		else{
			daten += user.getVorname() + ";" + user.getNachname() + ";"+ user.getUsername()+";"+user.getEMail()+";"+user.getTelefonnummer()+";"+user.getNotizen()+";";
		}

		daten += app.getHersteller() + ";" + app.getTitel() + ";"+ app.getVersion()+";"+app.getNotizen()+";"+app.getSonstiges()+";";
		daten += key.getKey()+";";
		daten += System.getProperty("line.separator");
		return daten;
	}

	public static void exportAll(){	
		BufferedWriter bw = null;
		File file = new File("C:\\Export\\Hallo.csv");

		try {
			file.createNewFile();
			bw = new BufferedWriter(new FileWriter("C:\\Export\\Hallo.csv"));

			String daten = getHeaders();

			List<Relation> relations = RelationManager.getInstance().getList();
			for (Relation relation : relations){
				User user = UserManager.getInstance().getUserOfID(relation.getUserID());
				Key key = KeyManager.getInstance().getKeyOfID(relation.getKeyID());
				Application app = ApplicationManager.getInstance().getApplicationOfID(relation.getApplicationID());
				daten += getCSV(user, app, key);
			}


			bw.write(daten);
			bw.flush();
			bw.close();

		} catch (Exception e) {
			System.out.println(e);
		}


	}

	private static String getHeaders() {
		return "Vorname;Nachname;Username;E-Mail;Telefonnummer;Notizen;Hersteller;Titel;Version;Notizen;Sonstiges;Seriennummer";
	}

Das Dokument wird einwandfrei durch einen Button click erstellt.
Wie bekomme ich es jetzt hin das wenn auf den Button geklickt wird, dass sich dann ein Fenster öffnet wo der Pfad abgefragt wird? Wie gesagt in SWT.

Gruß Mannni


----------



## mannni10 (24. Okt 2011)

Oops tut mir leid, das habe ich vergessen 


```
private static String getCSV(User user, Application app, Key key){
		String daten = ""; 
		if (user == null){
			daten += ";;;;;;";
		}
		else{
			daten += user.getVorname() + ";" + user.getNachname() + ";"+ user.getUsername()+";"+user.getEMail()+";"+user.getTelefonnummer()+";"+user.getNotizen()+";";
		}	
		daten += app.getHersteller() + ";" + app.getTitel() + ";"+ app.getVersion()+";"+app.getNotizen()+";"+app.getSonstiges()+";";
		daten += key.getKey()+";";
		daten += System.getProperty("line.separator");
		return daten;
	}
	public static void exportAll(){	
		BufferedWriter bw = null;
		File file = new File("C:\\Export\\Hallo.csv");
		try {
			file.createNewFile();
			bw = new BufferedWriter(new FileWriter("C:\\Export\\Hallo.csv"));
			String daten = getHeaders();
			List<Relation> relations = RelationManager.getInstance().getList();
			for (Relation relation : relations){
				User user = UserManager.getInstance().getUserOfID(relation.getUserID());
				Key key = KeyManager.getInstance().getKeyOfID(relation.getKeyID());
				Application app = ApplicationManager.getInstance().getApplicationOfID(relation.getApplicationID());
				daten += getCSV(user, app, key);
			}
			bw.write(daten);
			bw.flush();
			bw.close();

		} catch (Exception e) {
			System.out.println(e);
		}
	}

	private static String getHeaders() {
		return "Vorname;Nachname;Username;E-Mail;Telefonnummer;Notizen;Hersteller;Titel;Version;Notizen;Sonstiges;Seriennummer";
	}
```


----------



## Pepe Rohny (24. Okt 2011)

Hi,

meinst du so was: FileDialog in SWT ?

Pepe


----------



## mannni10 (25. Okt 2011)

Ja, genau so etwas meinte ich, vielen Dank


----------

