我想解析MVC C#中的文件,请参阅下面的格式。由于它不在JSON中,我不能使用JavaScript序列化程序反序列化为一个对象。另一个选项是用于LINQ并逐行读取并检索所需的值。任何人都可以推荐一种更有效的方式来做到这一点。C#解析文本文件
我需要检索的第一个字段是来自ASSAYS 的ASSAY NUMBER(例如值877),然后是来自TEST_REPLICATE的ASSAY_STATUS字段,可能是多个节点。由于
LOAD_HEADER
{
EXPERIMENT_FILE_NAME "xyz.json"
EXPERIMENT_START_DATE_TIME 05.21.2012 03:44:01
OPERATOR_ID "Q_SI"
}
ASSAYS
{
ASSAY_NUMBER 877
ASSAY_VERSION 4
ASSAY_CALIBRATION_VERSION 1
}
TEST_REPLICATE
{
REPLICATE_ID 1985
ASSAY_NUMBER 877
ASSAY_VERSION 4
ASSAY_STATUS Research
}
TEST_REPLICATE
{
REPLICATE_ID 1985
ASSAY_NUMBER 877
ASSAY_VERSION 4
ASSAY_STATUS Research
}
最好的解决方案是为这个DSL使用或编写解析器。但是,如果它足够简单(并且假设引号中的字符串不能包含转义字符或大括号),那么您可能会通过粗略的字符串操作来获得。 –
'任何人都可以推荐一种更有效的方法吗?显示您的低效版本,以便我可以考虑更高效的方法。或者我应该把它解释为“为我写代码”? –
是的,如果你有代码解决方案请分享 –