2012-04-15 16 views
7

Zastanawiałem się, jak dostać się Java, aby zapisać plik tekstowy o nazwie hello.txt do pulpitu bez pisaniaJak zapisać coś na pulpicie bez twardego kodowania katalogu?

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

jakiejkolwiek pomocy byłoby świetnie. tak jak:

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

..i fileName.getText() jest tylko będzie to 'cześć'.

AKTUALIZACJA: Myślę, że będę w stanie korzystać z jfilechooser, więc czy to działa?

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

czy to zadziała? a jeśli tak, to w jaki sposób mogę go zapisać, aby zapisać plik za pomocą zaznaczenia? im noob .... :(

+1

Jeśli znasz system operacyjny, a następnie można użyć katalogu domowym użytkownika nazwę skrótu do stworzenia pełnego katalogu pulpitu w stosunku do domu użytkownika. – tartar

+0

'C: \\ Users \\ NoAustin \\ Desktop' .... czy możesz być bardziej konkretny w określaniu tego, co chcesz? Czy chcesz po prostu uzyskać katalog domowy ze środowiska, czy jest to coś innego? – SJuan76

+0

Czy tego właśnie szukasz? http://stackoverflow.com/questions/1080634/how-to-get-the-desktop-path-in-java – Laky

Odpowiedz

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); 
    } 
} 

zapomniałem różnych lokalizacjach. Bardzo kruchy kod (nawet do kodu, który uruchamia się system operacyjny szczególnego). Zobacz mój komentarz poniżej re. OS X/JFileChooser.

..how się (System.getProperty("user.home"), "Desktop") prace ..

usłużnie Oracle dostarcza dokumenty do tego rodzaju rzeczy.

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


będę oddania do eksperta (lub użytkownika) na ten temat, ale nie sądzę, OS X obsługuje żadnych ikon aplikacji lub ikony dokumentu bezpośrednio na ekranie ..start, domyślny wygląd, cokolwiek. Prawdopodobnie lepiej zaoferować użytkownikowi końcowemu numer JFileChooser wskazujący na user.home i poprosić go o zapisanie dokumentu na pulpicie (lub w dowolnym miejscu).

+0

w porządku, wyjaśnij, jak działa '(System.getProperty (" user.home ")," Desktop ")'? – PulsePanda

+0

w porządku.więc nie mogę znaleźć, jak zrobić jfilechooser ... i tak może dać przykład na tylko podstawy? jak po prostu tworzenie jframe, ale sprawiają, że to wyskakuje i pozwala go zapisać? – PulsePanda

+0

cóż, próbuję to zrobić za darmo. jego dla projektu szkolnego – PulsePanda

0

User.home działa, ale po prostu kodowanie na twardym dysku katalogu powinno być w porządku.

3

Ten punktów na pulpicie reż:

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

Na Windowsie robi to, nie na Linuksie :(. – Majora320

+1

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

Powiązane problemy