Как сделать путь к файлу совместимым со встроенной базой данных? (Apache Derby Embedded)

#java #database #path #derby #embedded-database

#java #База данных #путь #derby #встроенная база данных

Вопрос:

Недавно я пытался использовать JFileChooser, чтобы выбрать, где будет создаваться база данных; однако проблема, с которой я столкнулся, заключается в том, что путь к файлу, который я получил от JFileChooser, имеет обратную косую черту вместо прямой, и я думаю, что это то, что не позволяет мне создать базу данных. Вот мой код и попытка решения проблемы.

         try {
            // Try to connect to the database 
            DriverManager.registerDriver(new org.apache.derby.jdbc.EmbeddedDriver());
            databaseconnection = DriverManager.getConnection("jdbc:derby:" formattedfolderpath ";");
            databaseconnection.setAutoCommit(false);
            currentdb = true;
        } catch (SQLException EX) {
           try {
                // Create the DB if it doesn't exist yet 
                DriverManager.registerDriver(new org.apache.derby.jdbc.EmbeddedDriver());
                databaseconnection = DriverManager.getConnection("jdbc:derby:" formattedfolderpath ";create=true"); 
                databaseconnection.setAutoCommit(false);
                currentdb = true;
            } catch (SQLException EX2) {
                //infoBox("OH MY LAWD", "Error");
            }
  

и

     JButton open = new JButton();
    JFileChooser fc = new JFileChooser();
    fc.setCurrentDirectory(new java.io.File("C:/Users/1jenningst/Desktop"));
    fc.setDialogTitle("PDF Manager");
    fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
    
    if (fc.showOpenDialog(open) == JFileChooser.APPROVE_OPTION){
        //
    }
    
    String folderpath = fc.getSelectedFile().getAbsolutePath();
    
    try{
        formattedfolderpath = new BufferedReader(new FileReader(folderpath));
    } catch (Exception e){
        //
    }
       
    selecting();
}
  

У кого-нибудь есть идеи о том, как я мог бы использовать переменную для завершения пути к файлу с помощью JFileChooser?
Спасибо,

Майкл

Комментарии:

1. Я почти уверен, что Derby будет обрабатывать либо соглашение о разделителе каталогов (косая черта или обратная черта). Вы уверены, что проблема в косых чертах? Можете ли вы добавить больше отладки в свою программу (и включить выходные данные), чтобы помочь проверить это и исключить другие проблемы?

Ответ №1:

Хорошо,
мне просто нужно было добавить две обратные косые черты к пути к файлу вместо одной:

 Cusersmissouridesktop123
  

становится

 C\users\missouri\desktop\123
  

Надеюсь, это поможет,

Тревор