身份证号转化问题

假定A公司有一些员工信息如下格式,并保存为一个文本文件中, 文件名为id_a.txt。

张华,110101199003079550,北京市东城区下家胡同1号
李刚,110101197110075337,北京市西城区月坛北街1号
王五,330102200011079844,北京市海淀区西北旺

该A和B公司共享这些员工信息,但又不想泄漏员工的身份证,需要将员工身份证号转化为年龄和性别保存。 转化后的文件内容格式为以下

张华,30,,北京市东城区下家胡同1号
李刚,48,,北京市西城区月坛北街1号
王五,19,,北京市海淀区西北旺

将身份信息转化为年龄和性别,并且以逗号分开,年龄计算获取系统当前的时间。

问题,编程实现将A公司员工信息文件转化为B所需要的文件。

身份证号码规则

身份证号码是特征组合码,由前十七位数字本体码和最后一位数字校验码组成。排列顺序从左至右依次为 六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。

出生日期码:表示编码对象出生的年、月、日,年、月、日代码之间不用分隔符,格式为YYYYMMDD,如20110830

顺序码共三位,表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号, 顺序码的奇数分配给男性,偶数分配给女性。