2012-04-15 9 views
7

Me preguntaba cómo conseguir java para guardar un archivo de texto denominado hello.txt al escritorio sin necesidad de escribir¿Cómo guardar algo en el escritorio sin codificar el directorio?

"C:\\Users\\Austin\\Desktop" 

Cualquier ayuda sería grande. así como:

FileWriter fileWriter = new FileWriter(fileName.getText(), true); 

..y la fileName.getText() es sólo va a ser el 'hola'.

ACTUALIZACIÓN: Creo que podría usar el jfilechooser, ¿esto funcionaría?

JFileChooser chooser = new JFileChooser(); 
chooser.setVisible(true); 

¿Eso funcionaría? y si es así, ¿cómo lo conseguiría para guardar el archivo usando la selección allí? im un novato .... :(

+1

Si conoce el sistema operativo, entonces puede usar de usuario Nombre de acceso directo de carpeta de inicio para la creación de un directorio de escritorio completa en relación con el hogar del usuario. – tartar

+0

'C: \\ Users \\ NoAustin \\ Desktop' ... ¿puede ser más específico al indicar lo que quiere? ¿Desea obtener el directorio de inicio del entorno o es algo más? – SJuan76

+0

¿Es esto lo que estás buscando? http://stackoverflow.com/questions/1080634/how-to-get-the-desktop-path-in-java – Laky

Respuesta

7
import java.io.File; 

class FindDesktopOnWindows { 

    public static void main(String[] args) throws Exception { 
     if (System.getProperty("os.name").toLowerCase().indexOf("win")<0) { 
      System.err.println("Sorry, Windows only!"); 
      System.exit(1); 
     } 
     File desktopDir = new File(System.getProperty("user.home"), "Desktop"); 
     System.out.println(desktopDir.getPath() + " " + desktopDir.exists()); 

     java.awt.Desktop.getDesktop().open(desktopDir); 
    } 
} 

olvidé diferentes variantes regionales. muy frágil código (incluso para el código que comienza específica del sistema operativo). Ver mi comentario a continuación re. OS X/JFileChooser.

..how las obras (System.getProperty("user.home"), "Desktop") ..

Oracle ofrece amablemente documentos para este tipo de cosas.

Ver System.getProperty(String) & new File(String,String).


voy a ceder a un experto (o un usuario) en esto, pero no creo que OS X es compatible con cualquiera de los iconos de aplicaciones o iconos de documento directamente en la pantalla ..start, aspecto por defecto, lo que sea. Probablemente sea mejor ofrecerle al usuario final JFileChooser apuntando a user.home y pedirle que guarde el documento en el escritorio (o donde lo desee).

+0

bien, explica cómo funciona el '(System.getProperty (" user.home ")," Desktop ")', por favor? – PulsePanda

+0

bien.entonces no puedo encontrar cómo hacer el jfilechooser ... ¿y podrías dar un ejemplo sobre lo básico? como simplemente crear un jframe, pero hacer que aparezca, y hacer que sea capaz de guardar? – PulsePanda

+0

bueno, estoy tratando de hacer esto de forma gratuita. es para un proyecto escolar – PulsePanda

0

User.home funciona, pero el código duro del directorio debería estar bien.

3

Esto le señala el escritorio dir:

javax.swing.filechooser.FileSystemView.getFileSystemView().getHomeDirectory() 
+0

En Windows lo hace, no en Linux, sin embargo :(. – Majora320

+1

try: File desktop = new File (System.getProperty ("user.home"), "Escritorio"); – mauretto

Cuestiones relacionadas