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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Nero 中级黑马   /  2013-9-3 15:43  /  1984 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

关于文件的赋值,有些疑问,求解
  1. for (File f : files) {
  2.     FileReader fr = new FileReader(f);
  3.     String dir2name = f.getName().replaceAll("\\.java$$$$", ".txt");//这句不懂,为什么要加双斜杠和$$$$
  4.     FileWriter fw = new FileWriter(new File(dir2, dir2name));
  5.     int len = 0;
  6.     char[] ch = new char[1024];
  7.     while((len=fr.read(ch))!=-1){
  8.         fw.write(ch,0,len);
  9.     }
  10. }
复制代码

YXTN)(KXU$CR6OS@1D]`VIN.jpg (28.89 KB, 下载次数: 14)

YXTN)(KXU$CR6OS@1D]`VIN.jpg

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

4 个回复

倒序浏览
这个是正则表达式里的东西,你可以去看看正则表达式
回复 使用道具 举报
1)加双斜杠的原因,是因为在双引号里面,\也需要转义。这里是匹配后缀名为.java的文件,这里的点需要转义,这样一共需要两次转义,所以就是双斜杠啦;
2)$$$$,这个就是说文件名以java后缀名结尾的意思,不过个人觉得只需要加一个美元符号就可以啦(你可以只加一个试试看,应该也能够满足要求的)!

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
加斜杠是因为要转义,要不你那个斜杠字符就会被当做特殊字符处理。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马