Java String 字符串截取和获取文件的上级目录

1、测试代码:

       public String test() {
		String root = ServletActionContext.getServletContext().getRealPath("/");
		String root1 = "te/st/21.jpg";
		File cat=new File(root);
		
		System.out.println("root="+root);
		System.out.println("parent="+cat.getParent());
		System.out.println("="+root1.substring(root1.indexOf('s')));
		return "success";
	}


 

2、测试结果:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Java中的substring方法结合字符串长度进行从后往前的截取。例如,如果要截取字符串的后三个字符,可以使用以下代码: ``` String str = "Hello World"; String result = str.substring(str.length() - 3); System.out.println(result); // 输出:rld ``` 在这个例子中,首先获取字符串的长度,然后减去需要截取的字符数,最后使用substring方法获取从该位置到字符串末尾的子字符串。 ### 回答2: Java中可以使用substring()方法从后往前截取字符串。substring()方法可以接受两个参数,分别表示截取的起始位置和结束位置。 要从后往前截取字符串,可以使用字符串的长度减去指定的截取长度得到截取的起始位置。例如,如果要从后往前截取5个字符,则起始位置为字符串的长度减去5。 下面是一个示例代码: ``` String str = "Hello, World!"; int length = str.length(); // 获取字符串的长度 int startPos = length - 5; // 从后往前截取5个字符,计算起始位置 String result = str.substring(startPos); // 使用substring()方法进行截取 System.out.println(result); // 输出结果为"World!" ``` 在上述代码中,我们首先获取字符串的长度,然后计算出了从后往前截取的起始位置。最后,使用substring()方法进行截取,并将结果打印出来。 需要注意的是,字符串的索引是从0开始的,即第一个字符的索引为0,第二个字符的索引为1,依此类推。因此,如果要从倒数第一个字符开始截取,起始位置应该为`length - 1`。 通过上述方法,可以实现从后往前截取字符串的功能。 ### 回答3: Java中可以使用substring()方法截取字符串,但默认是从字符串的前部开始截取的。如果想要从后往前截取字符串,可以借助StringBuffer或StringBuilder类的reverse()方法先将字符串反转,然后再使用substring()方法截取需要的部分。 具体实现过程如下: 1. 首先,创建一个StringBuffer或StringBuilder对象,将需要截取的字符串传入构造方法中。 2. 调用reverse()方法,将字符串反转。 3. 使用substring()方法,从反转后的字符串中截取需要的部分。这里需要注意,由于字符串已经反转,所以从末尾开始截取的位置索引要进行一些计算。可以借助字符串的长度length()方法来得到字符串的长度,然后再减去需要截取的字符数,就可以得到截取的起点位置。 4. 最后,将截取到的字符串再次反转回来,即可得到从后往前截取的结果。 需要注意的是,如果需要频繁进行从后往前截取的操作,建议将字符串转换为StringBuilder对象进行操作,因为StringBuilder的效率更高。 总结:通过使用StringBuffer或StringBuilder类的reverse()方法和substring()方法,可以实现从后往前截取字符串的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值