2017-03-11 2 views
-4

Supposons que j'ai un fichier nommé DevelopmentFeeCalculator dans le dossier du projet, maintenant je veux obtenir le nom de la classe de ce fichierComment obtenir un nom de classe de fichier java en utilisant System.getProperty?

class main { 

    public static void main(String [] args) throws Exception 
    {   
    String className = System.getProperty(DevelopmentFeeCalculator.class.getName()); 

    String 
    className1 = System.getProperty("user.dir.DevelopmentFeeCalculator.class.getName()"); 

    String 
    className2 = System.getProperty("DevelopmentFeeCalculator.class.getName()"); 

     } 
    } 

aucun d'entre eux fonctionne.

+1

Vous n'avez pas besoin 'System.getProperty', utilisez simplement' DevelopmentFeeCalculator.class.getName() ' –

+0

mais mon instructeur m'a dit d'utiliser System.getProperty() –

+0

Que faites exactement que vous devez faire ? Si vous avez besoin du nom de la classe, l'utilisation des propriétés du système n'est pas nécessaire. –

Répondre

0

Eh bien System.getProperty est pas pour cela porpuse

Ici vous pouvez lire ceci:

https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

Si vous voulez que vous venez d'utiliser:

String className = System.getProperty(NumberStatistics.class.getName()); 
    System.out.println(className); 
    String classNameCorrect = NumberStatistics.class.getName(); 
    System.out.println(classNameCorrect); 

null lecteur.NuméroStatistique

J'espère que ça aide

+0

Mon instructeur veut que j'utilise System.getProperty (DevelopmentFeeCalculator.class.getName()) –

0

Ok, comme je l'ai dit je ne sais pas pourquoi vous voulez l'utiliser, je pense que vous voulez peut-être lire le chemin du fichier ou définir quelque chose une valeur que vous savez ce que je veux dire?

Donc, si vous voulez faire de cette façon, vous aurez besoin d'ajouter dans votre propriété une nouvelle clé et la valeur comme ceci:

package reader; 

public class Main { 
    public static void main(String[] args) { 
     String key= Main.class.getName(); 
     String value = key; 
     System.setProperty(key, value); 
     System.out.println(System.getProperty(key)); 
    } 
} 

Je suis: reader.Main

Comme vous pouvez le voir maintenant i « m en utilisant ce que vous vouliez une clé et je dois la valeur;)

Hope it helps

vous pouvez lire un peu sur ce ici

How to add new System Properties in java