main函数的通配符参数

今天发现一个之前没有注意过的问题,在给java的main函数传参时,参数可以使用通配符来表示多个文件,例如:
java -jar post.jar *.xml


其中"*.xml"代表当前文件夹下所有的xml文件。

之前一直以为main函数会认为"*.xml"只是单一的参数值,即String[] args的length为1,但实际测试后发现,main函数会将"*.xml"所匹配的所有文件名作为多个参数值传入。

见代码:


public static void main(String[] args) throws IOException {
System.out.println(args.length);
for(String arg : args){
File file = new File(arg);
System.out.println(file.getName());
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while((line = br.readLine()) != null){
System.out.println(line);
}
}
}


这是我在本地传入"*.txt"后的测试结果


3
demo1.txt
123
456
demo2.txt
223
456
demo3.txt
323
456


可能是我少见多怪了,不管怎样,先记录下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值