C项目练习|C项目练习(局用程控交换机数据预处理系统)

【C项目练习|C项目练习(局用程控交换机数据预处理系统)】本项目主要完成对局用程控交换机的二进制磁带卸载数据,按照一定的格式要求,转化成标准ASCII码格式并以文本形式输出,然后再经过内存排序后,提供给后续计费模块进行批价处理。

1. 码制转换
局用程控交换机为了减少数据存储量,通常数据以BCD码的形式进行存储。BCD (Binary-Coded Decimal,二进码十进数,简称BCD)用4位二进制数来表示1位十进制数中的0-9这10个数码,简称BCD码。但为了方便后续工作的进行,通常需要将其转换成我们常见的ASCII码。我们所使用的BCD数据被存放在后缀名为bs1、bs2、bs3文件中,具体文件格式见附录一。转换后生成的文件请保存在同名ASC文件中。
BCD文件在Data\Raw_Data 文件夹中
转换后的ASCII文件请放在 Data\ASC_Data 文件夹中
2. 数据校验
码制转换完成后,我们要对转换后的数据进行校验,其目的是为了检查数据的合法性,删除非法数据。如出现以下数据,则应该删除:
a. 主叫号码少于7位
b. 被叫号码少于3位
c. 结束时间小于开始时间
d. 文件结尾的残缺数据
3. 排序
局用程控交换机中的数据是以时间为序存储的,但是后续计费模块中的数据要求以主叫号码为序才能进行处理。因此我们需要对转换后的ASCII数据进行排序,排序第一关键字为主叫号码,第二关键字为日期,第三关键字为呼出时间。请将排序后的文件保存在同名STD文件中。
排序后的文件请放在 Data\STD_Data 文件夹中
4. 日志处理
日志一般是指存储软件程序、服务或操作系统产生的消息记录的文件。本功能主要对用户进行的所有操作进行记录并显示。每条日志需要有操作类型、结果、开始时间、结束时间等内容。
生成的日志文件请存放在 Data\LOG 文件夹中
5.界面:
用户界面应完成多级菜单显示及选择,此外还应加入对转换后和排序后的文件的显示功能。注意,由于数据量较大,必须采取分页显示。
(源代码略)

    推荐阅读