Question

Comment puis-je obtenir l'emplacement du lors de l'utilisation de ma demande sur différentes plates-formes?

Était-ce utile?

La solution

Autres conseils

Vous pouvez utiliser la propriété système « os.name » pour déterminer le système d'exploitation. , Récupérer le fichier hosts en fonction de l'endroit où chaque système stocke qu'exploitant. Par exemple:

String osName = System.getProperty("os.name").toLowerCase();
File hostsFile;
if (osName.startsWith("mac os x")){
  hostFile = new File("/etc/hosts");
} else if (osName.contains("windows")){
  hostFile = //...
}

Jetez un oeil à l'emplacement des fichiers hosts pour chaque système d'exploitation et la version sur Wikipedia . Malheureusement, vous devrez implémenter votre propre logique semblable à la réponse de Michael:

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

public class HostsFile
{
    public static void main(String[] args) throws Exception
    {
        String osName = System.getProperty("os.name");

        File hostsFile = null;

        if (osName.contains("Windows"))
        {
            hostsFile = new File(System.getenv("WinDir")
                    + "\\system32\\drivers\\etc\\hosts");
        }

        Desktop.getDesktop().open(hostsFile);
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top