0
public static void moveSQLite(){
File source = new File("C:\\Users\\520\\Desktop\\System.Data.SQLite"); // Specify initial path
File target = new File("C:\\Windows\\Microsoft.NET\\assembly\\GAC_64"); // Desired path
// If the source location exists, delete the any old source files
// and copy the entire directory of the source to the target location
if(source.exists()){
System.out.println("Installing SQLite Database.");
try {
FileUtils.deleteDirectory(target);
System.out.println("Deleting previous versions of System.Data.SQLite");
System.out.println("\"" + source + "\"" + " was successfully"
+ " copied to " + "\"" + target + "\"");
FileUtils.copyDirectory(source, target);
System.out.println("SQLite database has been installed.");
}catch (IOException e) {
e.printStackTrace();
}
// Otherwise prompt the user that the source directory does not exist
}else{
System.out.println("SQLite not found - are you sure you have it in the right directory?");
}
}
以上是從我的安裝程序使用的許多方法中的一種(這基本上拖放在用戶的計算機上的文件的具體位置)的摘錄。在命令行中,或者最好在用戶界面中,我想讓用戶輸入他們的「源」目錄,也就是說,在這種情況下,我的「用戶」目錄是520,但對於其他用戶,它可能是不同。我可以用asterix替換它,允許Windows找出目錄本身,還是必須將目錄硬編碼?任何擁有軟件開發經驗的人都請輸入您的答案 - 謝謝。允許用戶輸入自己的「用戶」目錄到一個.jar安裝
'user.home'例如,「520」在哪裏?我能夠進一步指定目錄,例如'520 \ foo \ bar'嗎? – theGreenCabbage
@theGreenCabbage我有點困惑,你想讓系統找出用戶的工作目錄和用戶在用戶目錄中輸入一些文件結構嗎? –
由於path的類型實際上是'Path',並且getProprty()的輸出似乎是'String',是不是一個問題? – theGreenCabbage