# FileDrop von Outlook in Java



## chriis (23. Jul 2010)

Moin

ich habs nun hinbekommen dass meine Anwendung Dateien via FileChooser laden kann und per SQL speichert, nun sind aber die Dateien, die ich benutzen will, alle in Mails gespeichert. So ist das also recht umständlich, da man immer erst den Anhang speichern muss. Ist es möglich die Dateien per DnD aus Outlook(oder anderen Mailclients) in meine Applikation zu bekommen? Ich habs schon mit DnD versucht aber bekomm das nicht ganz hin. 


So sieht meine drop-Methode im DropTargetAdapter aus.

```
public void drop(DropTargetDropEvent dtde) {
	DataFlavor 	chosenFlavor = null;
	Object 	data=null;

	for (DataFlavor f : dtde.getCurrentDataFlavorsAsList()){
		if(dtde.isDataFlavorSupported(f)){
			chosenFlavor = f;
			break;
		}	
	}
	if(chosenFlavor == null) {
		dtde.rejectDrop();    
		System.out.println("no chosenFlavor");
		return;
	}
	try {
		dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
		data = dtde.getTransferable().getTransferData(chosenFlavor);
		if(data == null)
			throw new NullPointerException();
	} catch ( Throwable t ) {
		t.printStackTrace();
		dtde.dropComplete(false);
		return;
	}
	if(List.class.isInstance(data))
	for(Object o : (List<?>)data)
		if(File.class.isInstance(o))
			setLeftDotText(File.class.cast(o).getAbsolutePath());
}
```


----------



## chriis (26. Jul 2010)

*push*

Hat noch keiner sowas mal versucht?


----------



## Foermchen82 (26. Jul 2010)

Ich kann dir zwar keine Lösung bieten, aber zumindest ein paar Randbedingungen:

1. man kann aus Outlook heraus Dateien auch ohne "SPeichern unter" abspeichern, indem man einfach die Datei via DnD z.B. in ein Verzeichnis zieht. Damit würdest du zumindest etwas deinen Arbeitsaufwand reduzieren.

2. Versuch erstmal heraus zu finden, wie man überhaupt irgendwie eine Datei per DnD direkt in ein Java-Programm laden kann. Wenn du das hast, sollte es nicht mehr weit sein zu deiner Lösung.

Ich werd aber auch nochmal schauen und vieleicht fällt mir da was ein


----------



## Foermchen82 (26. Jul 2010)

Schau mal hier: Dropper - show File Drop Target from Drag-n-Drop : Drag DropSwing JFCJava

Aber ich hab gesehen, dass es nicht direkt aus Outlook heraus funktioniert!


----------



## chriis (26. Jul 2010)

Also mit meinem Codebeispiel oben lassen sich bereits Dateien aus dem Explorer per DnD laden, das geht.
An die einfache Möglichkeit mit einem Zwischendrop im Explorer hatte noch nicht gedacht  das wäre erstmal ein akzeptabler workaround.

Danke


----------



## wimix (28. Sep 2011)

hier gibt's eine Lib, die direktes Drag&Drop von Mails aus Outlook in Java Programme ermöglicht:

Java Outlook Drag&Drop | Free Office/Business software downloads at SourceForge.net 

oder für kommerzielle Anwendungen:

WILUTIONS

Gruß
Wolfgang


----------

