• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Klasa Desktop wyjaśnienie kodu

Object Storage Arubacloud
0 głosów
83 wizyt
pytanie zadane 6 czerwca 2018 w Java przez Adrian Paź Obywatel (1,270 p.)
zamknięte 6 czerwca 2018 przez Adrian Paź

Witam! Na swoje potrzeby wyszukałem w necie jak zrobić metodę, która otwiera mi plik z poziomu programu (ale się podnieciłem jak zadziałało ^^) ale zupełnie nie rozumiem znaczenia kawałka kodu i dlaczego tak akurat.. Chodzi mi o ten kod (a raczej o to co jest między komentarzami):

package biblioteka;

import java.awt.Desktop;
import java.io.File;
import java.io.IOException;

public class OtwieraniePlikuTesktowego
{

	public static void main(String[] args)
	{
		File file = new File("Informacje.pdf");

		if (!Desktop.isDesktopSupported())
		{
			System.out.println("Klasa Desktop nie jest obsługiwana na bieżącej platformie! \n");
		}

		Desktop desktop = Desktop.getDesktop();
		try
		{
			//////////////////////////////////////////////////////////////////
			if (file.exists())
				desktop.open(file);
			file = new File("Informacje/java.pdf"); // ??
			if (file.exists())    //2x to samo?
				desktop.open(file); //i tu też..
			///////////////////////////////////////////////////////////////////
		} catch (IOException e)
		{
			System.err.println(e);
		}

	}

}

 

komentarz zamknięcia: Problem został rozwiązany

1 odpowiedź

+1 głos
odpowiedź 6 czerwca 2018 przez RafalS VIP (122,820 p.)
wybrane 6 czerwca 2018 przez Adrian Paź
 
Najlepsza
Ten kod jest ewidentnie kiepski. Po pierwsze gdy już sprawdzi ze desktop not supported to zrobi printa i lexi dalej get desktop :D. A to co zaznaczyles powinno odbyc sie raz.
komentarz 6 czerwca 2018 przez Adrian Paź Obywatel (1,270 p.)
hmmm nie znam się nigdy tego nie widziałem a (niestety ;((( ) skopiowałem to z tej strony:

https://www.journaldev.com/864/java-open-file
komentarz 6 czerwca 2018 przez Adrian Paź Obywatel (1,270 p.)
Jak więc to zrobić dobrze?(prócz tego co powiedziałeś ) trzeba się uczyć dobrych praktyk ;D
komentarz 6 czerwca 2018 przez RafalS VIP (122,820 p.)

Na pierwszy rzut oka się zdziwiłem, bo kojarzę journaldev i raczej był solidny content. Problem w tym, że Ty ten przykład przerobiłeś. On otwierał plik dwa razy, bo otwierał inne pliki. Chciał pokazać, że jak otworzysz plik .txt to otworzy Ci się w Twoim domyślnym programie od .txt (prawdopodobnie notatniku pod windowsem) a jak plik .pdf to otworzy sie innym programem. Ty w sumie też otwierasz dwa pliki, ale nie widzę sensu :P skoro pytasz o co chodzi to znaczy, że nie otwierasz celowo dwóch plików :P.

I on zrobił return gdy dekstop not supported.

Powinieneś zrobić to najnormalniej w świecie:
 

    public static void main(String[] args) {
        if (!Desktop.isDesktopSupported()) {
            System.out.println("Klasa Desktop nie jest obsługiwana na bieżącej platformie! \n");
            return;
        }
        File file = new File("Informacje.pdf");
        Desktop desktop = Desktop.getDesktop();
        try {
            if (file.exists())
                desktop.open(file);
        } catch (IOException e) {
            System.err.println(e);
        }
    }

 

komentarz 6 czerwca 2018 przez Adrian Paź Obywatel (1,270 p.)
Ale kompromitacja :D Boże.. Nie było tematu, ty tego nie czytałeś, ja tego nie napisałem a teraz idę sie zapaść pod ziemie :D

Podobne pytania

0 głosów
1 odpowiedź 151 wizyt
pytanie zadane 4 maja 2019 w Java przez ShockOfficial Początkujący (390 p.)
0 głosów
1 odpowiedź 179 wizyt
pytanie zadane 18 lutego 2018 w Java przez Piotrek32 Obywatel (1,610 p.)
0 głosów
1 odpowiedź 181 wizyt
pytanie zadane 1 września 2017 w Java przez niezalogowany

92,568 zapytań

141,420 odpowiedzi

319,622 komentarzy

61,954 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...