我不知道我是否可以运行此代码并且它可以工作但是在这里:
public void actionPerformed(ActionEvent e) {
try
{
Runtime rt = Runtime.getRuntime();
Process p = rt.exec("c:\\Users\\Toby\\AppData\\Roaming\\.minecraft\\minecraft.exe");
}
catch(Exception a)
{
}
}
这是一个按钮,它启动了我的世界发射器。如果我想把它交给我的朋友,我该怎么做才能找到用户'Toby',而是寻找他们的主文件夹?对不起,如果它令人困惑!
答案 0 :(得分:5)
我认为你正在寻找user.home
财产。这里有一个属性列表:http://www.mindspring.com/~mgrand/java-system-properties.htm
因此,您的代码将更改为:
Process p = rt.exec(System.getProperty("user.home") + \\AppData\\Roaming\\.minecraft\\minecraft.exe");
答案 1 :(得分:4)
如果您想与其他版本的Windows保持一致,我建议使用System.getenv("APPDATA")
而不是添加到System.getProperty("user.home")
,因为旧版本中不存在漫游文件夹的Windows
所以你的代码会变成这样的东西:
Process p = rt.exec(System.getenv("APPDATA") + ".minecraft\\minecraft.exe")
答案 2 :(得分:0)
尝试System.getProperty("user.home")
String mhome = System.getProperty("user.home"))+"";
public void actionPerformed(ActionEvent e) {
try
{
Runtime rt = Runtime.getRuntime();
Process p = rt.exec(mhome+"\\AppData\\Roaming\\.minecraft\\minecraft.exe");
}
catch(Exception a)
{
}
}