2017-12-28 4 views
-1

Ich versuche, einen Ordner auf dem Desktop mit dem aktuellen Datum zu generieren und dann einen anderen Ordner innerhalb der aktuellen Datum Ordner Namen "IBA" zu generieren. Einfach ein Ordner auf dem Desktop und dann ein Ordner innerhalb des generierten Desktop-Ordners. Ich habe ein kleines Problem mit der Syntax dafür ist Java.Verwenden von Strings für die Dateipositionsreferenz mit System.getProperty ("user.home")

I. Eine Zeichenfolge, die das heutige Datum ist. (Werke)

String date = new SimpleDateFormat("MM-dd-yyyy").format(new Date()); 

II. Eine Datei, die den Desktopordner des Benutzers findet. (Werke)

File desktop = new File(System.getProperty("user.home"), "Desktop"); 

III. Eine Datei, die den Desktopordner des Benutzers findet, findet dann mithilfe der obigen Zeichenfolge einen Ordner im Desktopordner mit dem heutigen Datum und fügt einen Ordner namens "IBA" hinzu. (Fehler)

File desktopdate = new File(desktop/date, "IBA"); 

Exception in thread "main" java.lang.Error: Ungelöste compilation Problem: Operator/undefiniert für den Argumenttyp (n) Datei, String bei DateFolder.main (DateFolder.java:11)

Hier ist der vollständige Code als Referenz. Ich denke, dass dies für andere hilfreich wäre, weil es zeigt, wie Zeichenfolgen für Dateilokalisierungsreferenzen nach System.getProperty ("user.home") verwendet werden.

import java.io.*; 
import java.util.Date; 
import java.text.SimpleDateFormat; 

public class DateFolder { 

public static void main(String[] args) { 

    String date = new SimpleDateFormat("MM-dd-yyyy").format(new Date()); 
    File desktop = new File(System.getProperty("user.home"), "Desktop"); 
    File desktopdate = new File(desktop/date, "Desktop"); 

    File dateFolder = null; 
    do { 
     dateFolder = new File(desktop, date); 
    } 
    while (dateFolder.exists()); 

    if (!dateFolder.mkdirs()) { 
     System.err.println("Unable to create folder \"dateFolder\". " + dateFolder); 
    } 


    File Food = null; 
    do { 
     Food = new File(desktopdate,"Food"); 
    } 
    while (Food.exists()); 

    if (!Food.mkdirs()) { 
     System.err.println("Unable to create folder \"dateFolder\". " + dateFolder); 
    } 
} 
} 

This is an example of what I would like to happen.

Vielen Dank für Ihre Zeit und Gemeinschaft Beitrag.

+1

[Wie Pfade in Java zu kombinieren?] (// stackoverflow.com/q/412380) –

+1

Sie versuchen, eine Datei durch eine Zeichenfolge zu trennen .... Was hast du eigentlich vor? –

Antwort

0

Operatoren in Java nicht overrided werden, so dass Sie die Objekte verwenden müssen, ersetzen:

File desktopdate = new File(desktop/date, "Desktop"); 

Für:

File desktopdate = new File(new File(desktop, date), "IBA"); 

Da der Konstruktor (File f, String s) erhält eine Datei s (kann ein Verzeichnis sein) f

+0

Danke, das ist genau das, was ich gesucht habe. Du hast meine Frage beantwortet. –

+0

Also akzeptiere es als korrekt und/oder upvote, wenn es dir geholfen hat. –

Verwandte Themen