gpt4 book ai didi

java - 如何使用 split() 删除路径中的最后一个目的地?

转载 作者:行者123 更新时间:2023-12-02 08:08:24 25 4
gpt4 key购买 nike

我有一个路径列表,我需要删除每个路径的最后一个目录。

路径:“I:\Directory_1\Directory_2\Directory_3-Sometext”我使用 split 方法删除了“-”右侧的所有内容

我尝试使用 split() 逐一删除,然后将所有内容重新组合到一个字符串中。我尝试过将所有内容拆分为 ("\") 并使用 lenght()

//Removes text after '-'
String [] parts = path.split("-")
String partsA = parts[0]

String [] newParts = partsA.split("\\\\");
String partsB = newParts[newParts.length-1];

partsA = partsA.substring(partsA.length()-partsB.length(),partsA.length()+partsB.length());

我期望输出是

\Directory_1\Directory_2

没有最后一个目录和文本

最佳答案

您可以使用正确的路径/文件对象,而不是使用字符串操作,其额外好处是它可以处理其他类型的路径(例如,/home/directory1 等 unix 路径) :

String f = "I:\\Directory_1\\Directory_2\\Directory_3-Sometext";
Path p = Paths.get(f);
Path parent = p.getParent();
System.out.println(parent.toString());

关于java - 如何使用 split() 删除路径中的最后一个目的地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56169971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com