描述
开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。
处理:
输入描述:
每组只包含一个测试用例。一个测试用例包含一行或多行字符串。每行包括带路径文件名称,行号,以空格隔开。
输出描述:
将所有的记录统计并将结果输出,格式:文件名 代码行数 数目,一个空格隔开,如:
示例1
D:\zwtymj\xccb\ljj\cqzlyaszjvlsjmkwoqijggmybr 645 E:\je\rzuwnjvnuz 633 C:\km\tgjwpb\gy\atl 637 F:\weioj\hadd\connsh\rwyfvzsopsuiqjnr 647 E:\ns\mfwj\wqkoki\eez 648 D:\cfmwafhhgeyawnool 649 E:\czt\opwip\osnll\c 637 G:\nt\f 633 F:\fop\ywzqaop 631 F:\yay\jc\ywzqaop 631
rzuwnjvnuz 633 1 atl 637 1 rwyfvzsopsuiqjnr 647 1 eez 648 1 fmwafhhgeyawnool 649 1 c 637 1 f 633 1 ywzqaop 631 2


public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); Map<String, Integer> m = new HashMap<String, Integer>(); String s2=null; while(sc.hasNext()) { String str = sc.next(); if(str.equals("exit")) break; int line = sc.nextInt(); String[] s = str.split("\\\\"); String name = s[s.length - 1]; if (name.length() > 16) name = name.substring(name.length()-16,name.length()); String key = name + " " + line; if (m.containsKey(key)) m.put(key, m.get(key) + 1); else m.put(key, 1); } int count = 0; for (String s1 : m.keySet()) { if (count++ > m.size() - 9) System.out.println(s1 + " " + m.get(s1)); } }