OFFICE集成/导入导出/交互
【新手进阶】之十一:“庖丁解牛”和“纪昌学射”——浅谈表格式文本数据的导入
2016-02-29 16:32:15
文件类型 : zip
文件版本 : Access2003
简要说明 : 一般来说,表格化数据前面肯定有若干行是表头,接着是以一定间距隔开的字段,再到数据主体,最后一行可能是制表符。大体思路是:根据字段建立一张表

所谓“表格式文本”,是我给非标准化格式文本文件起的名字。主要在于这些文本看起来与一些报表十分相似,有表头有边框等等。如何导入这种文本数据,是一个朋友提出的问题。这让我想起了一个成语——“庖丁解牛”。       “庖丁解牛”是讲一个姓丁的厨师,因为专注于寻找规律,以至于神乎其技。类似的还有一个小故事——“纪昌学射”。        说的是一个叫纪昌的人去向飞卫学射箭,师父说,“先学不瞬”,也就是学不眨眼。他便每天躺在妻子的织布机下边看踏脚板,三年后,就算锥子尖碰到眼眶都不眨眼了。然后学“视小如大”,回去后他就用牦牛尾巴的把把虱子挂在窗户上,天天盯着看,三年后看到虱子就像车轮那么大了……       后面则是“老虎向猫学捕食”的翻版了。       过了三年之后,纪昌自认为射术已经学得已经天下第一了,就准备私自下山闯荡一番。半路想起还有自己的师傅比自己厉害,决定回去解(shang)决(xin)掉(bing)他(kuang)。恰巧的是,师傅刚刚从山上准备下来,于是毫不犹豫地引弓搭箭。两人互相对射,箭头在半空中互相击中碰落。       最后,他还有一支箭,而师傅没箭了。他得意洋洋地射出,“这次我看你还能不能逃得过”。       师傅缓缓地折下一枝荆棘,在箭快射到的时候,轻轻挡住了。       这时候他绝望了……不过师傅并没有怪他,说自己已经没法教他了,让他跟自己的师傅甘蝇(飞卫的师父)学习吧。       甘蝇带他到悬崖边上,“让我看看你的射术。”下面是万丈深渊,纪昌早已双脚发软,哪还知道怎么射箭啊?这时候,老人抬眼望向天空,目光如箭,两只大雁应“视”而落。十年后他才下山,再也不谈射术。有朋友带了一副弓箭过来,他很认真地问,“这是什么,干什么用的?”朋友大笑。他又连续问了几次,朋友这才正色地说,“你学到真正的射道了。”       这两个故事告诉我们,学习观察是一件非常重要的事情。观察是分析的基础,只有学会了观察,才知道如何从繁杂的信息中提取所需的内容。对于表格式文本,如果我们专注于所需的数据,也就只看到数据(“视小如大”),再分析这些数据是如何分布排列的(“目无全牛”),那么一切就变得游刃有余了。       一般来说,表格化数据前面肯定有若干行是表头,接着是以一定间距隔开的字段,再到数据主体,最后一行可能是制表符。大体思路是:根据字段建立一张表【注】,然后打开记录集和文本,跳转到文本数据主体的第一行,分离数据并写入记录集。              【注】:虽然字段名称和记录的间距和分隔方式都是一样,理论上可以分离出来并用程序创建表,但是考虑到代码将会变得更加复杂,因此还是手动建表好些。)