免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 不死草
打印 上一主题 下一主题

求教格式检查的方法 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-05-07 11:18 |只看该作者

回复 #10 不死草 的帖子

完全理解。。。
你所说的AI是啥? 好奇 

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
12 [报告]
发表于 2009-05-07 11:19 |只看该作者
原帖由 不死草 于 2009-5-7 10:45 发表
哦,算是读数据的代码的问题吧,但是我不可能现在去修改所有的程序的读读数据的方式,再说这个也是对数据本身的要求。

那就写个脚本对数据文件本身进行检查和重新格式化,然后把格式化后的数据文件提交给其他程序。

论坛徽章:
0
13 [报告]
发表于 2009-05-07 11:28 |只看该作者

回复 #12 MMMIX 的帖子

呵呵,我只需要检查就可以了,格式不对的话,我可以打回给别人,让他们重新做,但是如果是检查,有没有比较好的建议,怎么做这个检查?

论坛徽章:
0
14 [报告]
发表于 2009-05-07 11:44 |只看该作者
AI就是“Application Integrator”,我们用的是很老的版本,新版本听说很强大很好用,但是没用过。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
15 [报告]
发表于 2009-05-07 14:01 |只看该作者
原帖由 不死草 于 2009-5-7 11:28 发表
呵呵,我只需要检查就可以了,格式不对的话,我可以打回给别人,让他们重新做,但是如果是检查,有没有比较好的建议,怎么做这个检查?

如果你非要检查格式,虽然麻烦点,也是可以的。把每行按照列的定义用 substr 切分,然后检查切分后的结果,除了最后一列外,其他列的最后都应该是空白字符。

[ 本帖最后由 MMMIX 于 2009-5-7 14:06 编辑 ]

论坛徽章:
0
16 [报告]
发表于 2009-05-07 14:19 |只看该作者

回复 #15 MMMIX 的帖子

哦,这个方法太复杂了点哦,因为实际我要做的格式检查不仅仅是每一行的格式检查,还有上下文的检查,比如以“10”开头的一行后面一行一定是“15” 开头的一行这样。

其中还可能会涉及到2个相同格式的文件的合并的问题。而合并的时候也要保证以“10” 开头的一行是在一起的,有的是直接append, 而有些则是其中的某些field需要合并,而有的line只是需要覆盖就可以了(保留一个文件中的某些line就可以--例如以“20”开头的line在每个文件中有3行,我只要保留任意某一文件中的三行就可以)。

最后,其实我的想法是想找出一种方法能够直接面对所有类似文件的检查。

当然,我有一个设想就是使用XML来辅助检查,用XML来直接定义格式(Structure),然后用Perl调用XML来检查。

[ 本帖最后由 不死草 于 2009-5-7 14:20 编辑 ]

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
17 [报告]
发表于 2009-05-07 14:34 |只看该作者
原帖由 不死草 于 2009-5-7 14:19 发表
哦,这个方法太复杂了点哦,因为实际我要做的格式检查不仅仅是每一行的格式检查,还有上下文的检查,比如以“10”开头的一行后面一行一定是“15” 开头的一行这样。

所以说,直接写个脚本先对数据文件处理一遍是最简单的,你又不干。

论坛徽章:
0
18 [报告]
发表于 2009-05-07 14:45 |只看该作者

回复 #13 不死草 的帖子

2L不是有方法么

论坛徽章:
0
19 [报告]
发表于 2009-05-07 14:52 |只看该作者

回复 #18 DQP 的帖子

呵呵,你的方法目前不能检查最后一个Field的格式移位的问题哦。

论坛徽章:
0
20 [报告]
发表于 2009-05-07 14:55 |只看该作者

回复 #19 不死草 的帖子

?? 不懂?
是指你在一楼中提到的"空格多了“ 的那种情况么
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP