A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈贺 中级黑马   /  2013-7-20 20:00  /  853 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨兴庭 于 2013-7-22 21:29 编辑
  1. <p>private static String getPath(String path)
  2.         {
  3.   return path.substring(path.lastIndexOf("\\")+1, path.length()).replace(".java", ".jad");
  4.         }</p>
复制代码
有一题目是把.java后缀名改为.jad,不知道怎么做,看了网上的一个方法没怎么看明白,望懂的人能告诉我下。

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1 赞一个!

查看全部评分

3 个回复

倒序浏览
path.substring(path.lastIndexOf("\\")+1, path.length())是取整个路径名的最后一部分,也就是说文件名,然后replace(".java", ".jad")就是将文件名中的“.java”用“.jad”替代啊

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1 赞一个!

查看全部评分

回复 使用道具 举报
"O_忆_O 发表于 2013-7-20 20:06
path.substring(path.lastIndexOf("\\")+1, path.length())是取整个路径名的最后一部分,也就是说文件名, ...

path.lastIndexOf是指定字符串最后出现的位置,("\\")+1这个怎么理解
回复 使用道具 举报
陈贺 发表于 2013-7-20 20:33
path.lastIndexOf是指定字符串最后出现的位置,("\\")+1这个怎么理解

这个就是找到最后一个反斜杠的角标啊。比如path="E:\javas\day01\My.java",那么path.lastIndexOf("\\")就是找到最后一个\出现的位置,这里要使用双反斜杠是因为要对反斜杠进行转义。后面要加1是因为文件名不包含.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马