【发布时间】:2020-01-01 23:39:44
【问题描述】:
我的旧项目打开一个文件,用下面的代码读取参数。
但对于我的新项目,我需要通过字符串(而不是文件)完成此操作,但事实证明这对我来说要困难得多。
我现在需要找到一个解决方案,我可以在其中使用 data["parameter"] 从字符串中读取参数。我的目标是,我不需要使用文件。
感谢您的帮助
-
file.txt
username = xela
name = Alex
Doab = 178199
zip = 88911
C# 代码:
var data = File
.ReadAllLines(Path.GetTempPath() + "file.txt")
.Select(x => x.Split('='))
.Where(x => x.Length > 1)
.ToDictionary(x => x[0].Trim(), x => x[1]);
//Get data
Textbox.Text = data["name"];
Textbox1.Text = data["zip"];
输出
Textbox Output would be "Alex"
Textbox1 Output would be "88911"
解决方案
var data = @"username = xela
name = Alex
Doab = 178199
zip = 88911"
.Split('\n').ToArray()
.ToDictionary(
x => x.Split('=')[0].Trim(),
x => x.Split('=')[1].Trim(' ', '\r'))
;
【问题讨论】:
-
请显示一个示例字符串。
-
那么到底是什么问题呢?将
File.ReadAllLines(...)替换为由新行分隔的字符串(例如yourString.Split('\n'),当然您还需要检查是否还有\r)。 -
@RenéVogt 很抱歉,我无法关注你。你能帮我多一点吗?
标签: c# .net string dictionary split