String的replaceAll方法替换目标为File.separator抛出异常原因

因为文件分隔符需要统一的问题,今天遇见了要将String中的"/"全部替换成File.separator,可是这行代码却抛出了异常
java.lang.IllegalArgumentException: character to be escaped is missing

String url = "/index/start.html"
url.replaceAll("/",File.separator);

后面仔细观察,在查看了文档后才发现了问题所在,文档中有说==如果是替换字符串中的反斜杠( \ )和美元符号( $ )可能会导致结果与被视为文字替换字符串时的结果不同;==仔细想想在Windows下的File.separator正好就是,可是因为没有直接写反斜杠,反而没有看出问题。

String url = "/index/start.html"
url.replaceAll("/","\\\\");

只要改为上面那个形式就可以正常替换了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值