gpt4 book ai didi

java - 需要关于通过验证数据阅读大量 XL 的建议

转载 作者:行者123 更新时间:2023-12-04 06:23:08 27 4
gpt4 key购买 nike

我要求客户上传包含数千行的电子表格。一行的不同列具有不同的数据类型,数据必须符合一些验证规则。例如

下面是一个示例文件结构:

(Header - Colume_name,Variable_type,field_size,i/p mask,required_field,validation_Text) 
(P/N,String,20,none,yes,none)
(qty,Integer,10,none,yes,none)
(Ship_From,String,20,none,yes,none)
(Request_Date,Date,MM/DD/YY ,yes,none)
(Status,String,10,none,yes,Failed OR Qualified)

在阅读 xl 表时,我需要根据上述约束验证数据,以防数据出现任何错误,我需要存储错误并通知客户。

请让我知道维护系统性能的最佳方法。

如有任何早期回复,我们将不胜感激。

谢谢,阿希什·古普塔

最佳答案

如果我理解你的问题,你想阅读验证规则文件,例如上面的示例。您希望编译规则,以便他们读取大型 Excel 电子表格(或者它是 CSV 文件?),并可能为被视为无效的每一行打印一条消息。

这似乎是一个两次通过的过程:1) 验证文件的验证和编译以及 2) 第 1 轮输出的编译并将其应用于 Excel 文件。

您可以通过多种方式中的任何一种进行现场验证,具体取决于您的技能和偏好。

  • 开发 VBA 代码以读取验证文件。然后写一个单独的宏来验证每一行
  • 用您最喜欢的语言编写一个解析器来读取验证文件。将一些列添加到读入的 Excel 电子表格中,其中包含列名称(例如,数量)、类型(例如,整数)、必需(例如,true)等字段。然后让 Excel 或 OpenOffice 突出显示无效行
  • 让 lex 和 yacc 生成 Java 或 C++ 解析器来扫描验证文件并输出 BNF。然后在上一步的输出中读取另一个 lex 和 yacc 文件,并让它验证 Excel 文件。

您在标签上指明了 POI,所以我认为您会想要生成 Java 代码。

当然,您也可以编写一个一次性程序来完成所有这些元编译和编译,但这将是一个脆弱的过程。

如果您可以自由指定验证文件,您可能希望将其设为 .XSD 文件,因为有自动化工具可以简化其扫描。有一些工具可以确定 XML 文件是否有效,以及可以将其转换为 Java 的编译器。

(当我阅读您的验证文件时,我想到了一个想法。您将如何将一个部分与另一个部分分开?例如,如果您读入 P/N、Qty、Request_Date、Ship_From、Status、P/N,是一个零件有两个P/N还是一个完整的零件少了几个所需的零件?)

关于java - 需要关于通过验证数据阅读大量 XL 的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6334128/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com