【问题标题】:How to make a file path compatible with an embedded database? (Apache Derby Embedded)如何使文件路径与嵌入式数据库兼容? (Apache Derby 嵌入式)
【发布时间】:2020-12-25 01:31:55
【问题描述】:

最近我一直在尝试使用 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 完成文件路径有任何想法吗?
谢谢,
迈克尔

【问题讨论】:

  • 我很确定 Derby 将处理目录分隔符约定(正斜杠或反斜杠)。您确定斜线是问题所在吗?您能否在您的程序中添加更多调试(并包含输出)以帮助验证这一点并排除其他问题?

标签: java database path derby embedded-database


【解决方案1】:

好的,
我只需要在文件路径中添加两个反斜杠,而不是一个:

C\users\missouri\desktop\123

变成

C\\users\\missouri\\desktop\\123

希望这会有所帮助,
特雷弗

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-18
    • 1970-01-01
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    相关资源
    最近更新 更多