1、基于剪贴板获取多行记录源的通用程序设计 翁磊 江苏省江阴中等专业学校 摘 要: Windows 操作系统提供的剪切板可用于暂时保存数据, 通常来说, 剪切板可以保存的数据类型有文本类型、数字类型、图片类型、视频类型等, 也有特殊格式的数据类型。在日常的工作中, 我们通常不会主动的去控制剪切板的内容, 比如主动读取剪切板数据或主动清空剪切板数据。但是在特殊情况下, 我们如果主动利用和控制剪切板数据, 在工作中经常遇到比较有规律的数据组织形式, 这些数据可能由大量的网页分页组成, 且被行和列标识出来, 是典型的记录组织形式, 我们每次需要对这类数据进行处理的时候会发现工作量很大, 且取出的数据也不
2、够规范, 本文重点介绍了一种基于剪贴板自动获取多行记录源的通用程序设计与实现方法。关键词: 剪贴板; 数据源; 网页; 记录; 特殊字符; 1 问题的提出通常系统开发人员会遇到这样的问题, 客户要求将基于 B/S 架构的应用程序中的相关数据完整地从原系统中取出, 由于原系统无设计数据导出功能, 若原系统数据库并不掌握在用户手中, 那么, 如何完整且快速的获得原系统中的数据?我们知道基于 B/S 架构的应用程序对数据信息的显示是以浏览器为主的, 且是以多条记录形式在一个页面上, 如果我们直接选中页面上的内容进行复制粘贴, 总会出现许多我们并不想要的数据或数据格式, 利用剪贴板设计一个程序来自动获
3、取多行记录数据并只取有用的信息是提高效率的一个方法。2 数据源2.1 数据源分析通常处理的数据源来自网页、文字处理等载体, 这些数据有一定规律, 但也有大量的无用信息, 通过对浏览器展示的数据进行分析, 发现原始数据存在以下特点: (1) 无意义的数据太多且会紊乱原始数据; (2) 每一个有效数据的长度不一; (3) 数据间会存在明显字符界限。由于网页文本内包含的一些特殊字符会对对原始数据产生迷惑, 如#9#0#$A#$D 经常会夹杂在数据源中, 这些特殊字符并不会真实显示, 因这些字符是不可打印也不可显示的字符, 却对源数据影响很大, 还有一部数据虽然无用, 却有助于们对数据进行分类、分列,
4、 因此合理使用这些特殊字符会有助于获取有用数据。图 1 用户界面 下载原图图 2 程序处理流程 下载原图2.2 数据源的本来面目的显示由于特殊字符的原因使得源数据显得有些乱, 因此我们会将这些字符进行相关的替换并展示出来, 去掉其扰乱视觉的特性, 可以使得我们对源数据有一些更为直观的印象。用函数 View String () 将一些特殊字符用某些非特殊的特定字符替换, 增加这类字符主要是对有用的数据进行分割, 以方便我们通过程序完整的取出并显示原始数据。3 系统设计3.1 特殊字符的删除在转换过程中特殊字符是由回车符号、TAB 符号、换行符号、制表符号和其它非打印符号等组成的内容, 在转换过程
5、中不具有任何意义, 因此要对这些字符进行删除处理。特殊字符处理模式可以将需要删除的特殊字符找出来并添加到特殊字符处理列表中, 故设计函数 Loop_Char () 和 Del_Char () 删除一些无意义的特殊字符。3.2 无用字符串的删除无用字符串是由描述性文字、标题或其它说明性文字组成的, 不是数据, 对数据转换来说也是无用的内容, 因此需要删除或替换。由于原始数据中可能含有无用的字符串, 要整理原始数据, 就必须删除这些无用信息。我们通过两个函数组合来处理这些无用信息, 即 Loop_Findstr () 和Del_Findstr () 。3.3 替换字符串对于特殊情况, 需要要将一些
6、字符串替换成另一些字符, 以方便我们对数据进行处理。设计 Loop_Repstr () 和 Rep_str () 处理函数来完成循环替换特殊字符串。3.4 参数文件的设计所谓参数就是用户通过认真分析数据源的规律找出的一些诸如特殊字符、无用字符串、替换字符串等内容, 本系统设计了两个 procedure 来保存和读取这些信息, 即 Write Set Up () 和 Read Set Up () 。参数文件的格式如下:用括起来的是项目名称, 然后每一行为参数内容4 系统实现及测试4.1 用户界面设计程序界面设计如图 1 所示。4.2 程序逻辑设计我们将功能划分为如下内容:读写参数、设置字段名称、
7、读取剪贴板内容并清除剪贴板、删除特殊字符、删除无用字符、替换指定字符串、转换特殊字符到可视字符、打开 XLS 文件并格式化表头、关闭 XLS 文件并提示消息、获得第 1 条记录、获得下 1 条记录、保存字段内容到电子表格中、按记录进行循环控制、定时处理流程等内容。程序处理流程如图 2 所示。4.3 程序测试系统完成后, 我们选择了多种数据源进行了测试和运行, 以测试系统的数据量约 1 万条记录为例, 未使用该软件进行复制的工作量预计 20 人日;使用该软件工作量预计 1 人日, 实际提高效率显著。5 结语剪贴板本身就是传递数据和信息的重要工具, 通常都是人工操作进行单次复制、粘贴, 在本系统的
8、实现借助少量的人工操作, 即由人进行数据简单的复制操作, 数据粘贴工作及处理均由程序实现, 这样可以快速的将正确的数据完整的提取出来, 从而极大的提高了工作效率。参考文献1卢伟涛.海量数据分析平台中数据交换模块的研究和实现D.北京邮电大学, 2015. (03) . 2张擂, 李清宝, 贾天江, 周登元.基于剪贴板监控的电子文档多级保护J/OL.计算机与现代化, 2015, (06) . 3天涯衰草.由剪贴板延伸出的快捷操作J.电脑爱好者, 2016, (13) . 4路璐.在 Office 中实现数据共享的技术研究J.长治学院学报, 2016, 33 (05) . 5章靖平, 史铁杰.巧用剪贴板打印中文期刊数据库检索结果J.现代情报, 2001, (01) .