Java String返回方法不返回

use*_*748 -1 java string return file

我有一个方法来返回文件夹路径的字符串.CSVFile方法调用另一个方法ConfigFilePath从配置文件中提取值并将其返回以用于另一个条件.

public CSVFile(ManagedElement_T[] meInfo) {
    String path = null;
    ConfigFilePath(path);
    system.out.print("CSV "+path);
}

public String ConfigFilePath(String path) {
    final String directory = System.getProperty("user.dir");
    final String filename = "config.properties";
    final File configFile = new File(directory+"/"+filename);

    final Properties prop = new Properties();
    InputStream input = null;

    try {
        input = new FileInputStream(configFile);
        prop.load(input);
        path = prop.getProperty("diretory_csv");
        System.out.println("PATH " + path);
    } catch (IOException ex) {
        ex.printStackTrace();
    } finally {
             // Close the file
    }

    File checkPath = new File(path.toString());
    System.out.println("CHECK " + checkPath);
    if (checkPath.exists()) {
        System.out.println("Directory already exists ...");
    } else {
           //mkdir if it does not exist
    }


    return path;
}
Run Code Online (Sandbox Code Playgroud)

问题是,它不返回任何var路径?当我打印它时只是说null但是在ConfigFilePath方法中它似乎从eclipse中的打印得到了正确的值.

System.out.println("PATH " + path); = C:/opt/CORBA/input
System.out.println("CHECK " + checkPath); = C:\opt\CORBA\input
System.out.print("CSV "+path); = null
Run Code Online (Sandbox Code Playgroud)

Chr*_*ian 6

该方法ConfigFilePath返回的值.您必须将返回的值分配给变量path:

path = ConfigFilePath(path);
Run Code Online (Sandbox Code Playgroud)

注意:尝试遵循Java命名约定.使用mixedCase的方法/变量和使用CamelCase的类/接口