.NET 可以加载和解析与 Java Properties 类等效的属性文件吗?

2024-01-10

C# 中是否有一种简单的方法来读取属性文件,该文件的每个属性都位于单独的行上,后跟等号和值,如下所示:

ServerName=prod-srv1
Port=8888
CustomProperty=Any value

在 Java 中,Properties 类可以轻松处理此解析:

Properties myProperties=new Properties();
FileInputStream fis = new FileInputStream (new File("CustomProps.properties"));
myProperties.load(fis);
System.out.println(myProperties.getProperty("ServerName"));
System.out.println(myProperties.getProperty("CustomProperty"));

我可以轻松地在 C# 中加载文件并解析每一行,但是是否有一种内置方法可以轻松获取属性,而无需自己解析键名和等号?我发现的 C# 信息似乎总是支持 XML,但这是我无法控制的现有文件,我更愿意将其保留为现有格式,因为需要更多时间让另一个团队将其更改为 XML比解析现有文件。


不,没有对此的内置支持。

您必须制作自己的“INIFileReader”。 也许是这样的?

var data = new Dictionary<string, string>();
foreach (var row in File.ReadAllLines(PATH_TO_FILE))
  data.Add(row.Split('=')[0], string.Join("=",row.Split('=').Skip(1).ToArray()));

Console.WriteLine(data["ServerName"]);

编辑:更新以反映保罗的评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET 可以加载和解析与 Java Properties 类等效的属性文件吗? 的相关文章

随机推荐