将文本文件解析为变量列表?

发布于 2024-10-14 20:31:18 字数 284 浏览 6 评论 0原文

我有一个文本文件(当前为 CSV 格式),如下所示:

RACE,"race_human"
GENDER,"male"
AGE,30
ALIGNMENT,"align_lawful_good"
DEITY,"Old Faith"

但是,我想将文本文件解释为变量列表。即:

var RACE:string = "race_human";

有没有一种简单的方法可以做到这一点,例如用程序代码使用的本地语言重新格式化文本文件?

I have a text file (currently in CSV format) as follows:

RACE,"race_human"
GENDER,"male"
AGE,30
ALIGNMENT,"align_lawful_good"
DEITY,"Old Faith"

However, I want to interpret the text file as if it were a list of variables. I.e.:

var RACE:string = "race_human";

Is there an easy way to do this, for instance reformatting the text file in the native language used by the program code?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

泅渡 2024-10-21 20:31:18

您可以用逗号分割每一行,然后将每个项目放入字典中(前提是键是唯一的)。如果某个键可能不存在,请使用 Dictionary.TryGetValue

string[] input = File.ReadAllLines(CSV-File-Here);
var dict = input.Select(s => s.Split(','))
                .ToDictionary(s => s[0], s => s[1]);

// show alignment
string alignment = dict["ALIGNMENT"];
Console.WriteLine(alignment);

// show all values
foreach (var key in dict.Keys)
{
    Console.WriteLine("{0}: {1}", key, dict[key]);
}

编辑:您可能对使用 CSV 文件的 FileHelpers 感兴趣。

You could split each line on the comma then place each item into a dictionary (provided the keys are unique). Use Dictionary.TryGetValue if there's a chance that a key does not exist.

string[] input = File.ReadAllLines(CSV-File-Here);
var dict = input.Select(s => s.Split(','))
                .ToDictionary(s => s[0], s => s[1]);

// show alignment
string alignment = dict["ALIGNMENT"];
Console.WriteLine(alignment);

// show all values
foreach (var key in dict.Keys)
{
    Console.WriteLine("{0}: {1}", key, dict[key]);
}

EDIT: you might be interested in FileHelpers to work with CSV files.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文