gpt4 book ai didi

c# - 有没有一种简单的方法来解析 C# 中的结构化文本文件?

转载 作者:太空狗 更新时间:2023-10-30 01:14:35 26 4
gpt4 key购买 nike

我正在尝试解析一个文本文件,但我觉得一定有更好的方法来做这件事。

文本文件由项目组成,项目可以包含键值对以及其他项目。我相信该文件只会深入到孙子项目(例如,项目中的项目,项目中的项目)。

目前我正在逐行遍历文件,并跟踪我所处的深度。然后,一旦我到达终止字符 ('}') 并且我处于 0 级,我就知道我已经捕获了整个父项。

由于我认为我没有很好地解释它,所以我的文件结构看起来与此类似。

parent_item {
key: value
key: value
child_item {
key: value
key: value
}
child_item {
key: value
key: value
key: value
grandchild_item {
key: value
key: value
}
}
key: value
key: value
}
parent_item {
key: value
key: value
child_item {
key: value
key: value
}
}

每个项目可以有 0 到多个子项目,但我认为它不会超过 3 个级别(父 -> 子 -> 孙)。

是否有更简单的方法来解析它,或者我的工作方向是否正确?

最佳答案

您的文件看起来几乎像 JSON,只是复杂嵌套对象的属性名称之间没有冒号。但是,它的不同之处在于您将无法使用像 JSON.NET 这样的 JSON 解析器。

我建议像您一样手动解析它——但要使用堆栈和状态机。每次遇到打开的 curl { 时,您的状态机都应该压入堆栈,并在遇到关闭的 curl } 时从堆栈中弹出。

关于c# - 有没有一种简单的方法来解析 C# 中的结构化文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42513124/

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