修剪文件名以用作字符串的正确方法?

rrf*_*eva 0 java javafx

我正在使用数据目录中的文件数据作为输入来创建一个javaFX项目.我想将每个文件名用作String变量.我已经加载了数据:

File path = new File("data");
File [] files = path.listFiles();
for (int i = 0; i < files.length; i++){
    if (files[i].isFile()){ 
       items.loadData(files[i].toString());
    }
Run Code Online (Sandbox Code Playgroud)

toString现在是data/fileName1.csv.我只想保存使用fileName1.我尝试在loadData()方法中使用split()方法,如下所示:

fileName= fileName.split("/")[1]; //should trim to fileName1.csv, works
fileName= fileName.split("\.")[0]; //should trim to fileName1, error
Run Code Online (Sandbox Code Playgroud)

第二个split()的错误是"无效的转义序列(有效转义序列是\ b\t \n\f\r \"\'\)".

我尝试过各种修改来解决这个问题.有没有更好/更有效的方法来实现这一目标?

编辑:更改修剪以分割

Tim*_*Tim 5

你需要逃避反斜杠.尝试\\.

但对于这样的操作,您应该使用Path函数,例如:https://docs.oracle.com/javase/7/docs/api/java/nio/file/Path.html#getFileName()