2016-04-20 45 views
0

我有这个代码,我创建一个文本文件,但正如你可以看到,路径是硬编码。在java上选择路径

如何设置用户选择路径并将其传递给字符串的代码,以便我可以将其放入保存txt的代码中。

public void saveSudoku() { 

     try (


       PrintStream savedSudoku = new PrintStream(new File("C:\\Users\\Daniel\\Desktop\\savedSudoku.txt"));) { 
      for (int i = 0; i < usedMatrix.length; i++) { 
       String sudokuNumber = ""; 
       for (int j = 0; j < usedMatrix[i].length; j++) { 
        sudokuNumber += " " + userSudoku[i][j] + " "; 
       } 
       savedSudoku.println(sudokuNumber); 
      } 
      savedSudoku.close(); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } 

     try (PrintStream levelAndHint = new PrintStream(new File("C:\\Users\\Daniel\\Desktop\\savedLevel.txt"));) { 

      levelAndHint.println(labelLevel.getText() + " " + hintCounter); 

      levelAndHint.close(); 

     } catch (FileNotFoundException e) { 

      e.printStackTrace(); 

     } 

    } 
+0

这是一个独立的Java应用程序? – sidgate

+0

如果能解决您的问题,请接受答案 – sidgate

回答

0

有多种选择

  • 设置系统环境变量的值

    String path = System.getenv().get("custompath");

  • 保存在一个文件,该文件是在类路径和读取它的路径文件

  • 如果它是一个stan dalone应用,与传递路径作为程序的参数和捕捉它的主要方法
0

你需要采取的路径作为使用System.in一个输入,并追加它与文件名,因为它传递的参数到“新的PrintStream” String s;

Scanner in = new Scanner(System.in); 

    System.out.println("Enter a string"); 
    s = in.nextLine(); 

我希望它能帮助