用户操作错误,尽可能多地给用户反馈错误信息,这算是好的设计吗?
最近在做一个读取CSV文件数据,并把数据保存进数据库的模块。
因为文件里的内容是用户随意输入的,那么读取进来的数据必然要做很多的格式检查,比如是否非空,是否正确的日期格式,是否纯数字,是否半角英数字,长度是否超过等等,如果检查出错误,就要把错误信息显示在画面上(画面上有个表格专门显示错误信息的)。
根据设计书的要求,在检查数据格式的同时,还要对这些数据做一些数据库检索操作,然后根据数据库操作的返回情况,当不符合某种业务要求的时候,要把相应的错误信息也显示在画面上。
因为读取的CSV文件可能有多个,所以还得对不同CSV文件的数据做一个文件数据整合性检查,代码量较大,光是检查就有4500行代码了。这导致的情况就是,检查越多,出错率越高,他哪怕是CSV文件里的数据格式全对了,因为还有不少数据库操作,也会发生很多业务错误。
现在我的一个想法就是,出错率太高的话,影响用户体验。试想,我修改一个文件十多次,依然不能读取,画面上依然报N多条错误信息,数据依然无法插入数据库,有谁会高兴呢。但是现在又想不到办法避免,请大家指教,谢谢。
[解决办法]
既然输入环节不是你控制的
那么检查当然错误多多
[解决办法]
我已经说了输入环节不再你的控制范围内
所以关键是cvs的生成过程
[解决办法]
做一个模板供用户下载,用户只需要在模板上填数据,格式你在模板上做好,就行了