gpt4 book ai didi

c# - 读写name值文本文件的简单方法

转载 作者:太空狗 更新时间:2023-10-29 23:58:32 24 4
gpt4 key购买 nike

我有一些有很多字段的类;

public class CrowdedHouse
{
public int value1;
public float value2;
public Guid value3;
public string Value4;

// some more fields below
}

我的类必须(反)序列化为以下格式的简单 Windows 文本文件

NAME1=VALUE1
NAME2=VALUE2

在 .NET 中最方便的方法是什么?这是一个文本文件,所有值都必须首先转换为字符串。假设我已经将所有数据转换为字符串。

更新 一个选项是 pinvoke WritePrivateProfileString/WritePrivateProfileString但是这些使用了我不需要使用的必需的“[Section]”字段。

最佳答案

编辑:如果您已经将每个数据值转换为字符串,只需在生成 Dictionary 后使用下面的方法对其进行序列化。这些值:

var dict = new Dictionary<string, string>
{
{ "value1", "value1value" },
{ "value2", "value2value" },
// etc
}

或使用 dict.Add(string key, string value) .


要读取数据,只需围绕 = 拆分每一行并将结果存储为 Dictionary<string, string> :

string[] lines = File.ReadAllLines("file.ext");
var dict = lines.Select(l => l.Split('=')).ToDictionary(a => a[0], a => a[1]);

要将字典转换为文件,请使用:

string[] lines = dict.Select(kvp => kvp.Key + "=" + kvp.Value).ToArray();
File.WriteAllLines(lines);

请注意您的 NAME s 和 VALUE s 不能包含 = .

关于c# - 读写name值文本文件的简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3781706/

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