缺乏知道如何读取正在输入文本文件的数据,这是我到目前为止所拥有的
try
{
StreamReader sr = new StreamReader(@"C:\\Program Files (x86)\\Python Data\\Rolldata.txt");
line = sr.ReadLine();
while (line != null)
{
Console.WriteLine(line);
textBox1.Text = line;
line = sr.ReadLine();
}
sr.Close();
Console.ReadLine();
}
这只是简单地提取数据并将其放到一个写入线上,这样我就可以实际看到它,但是如何以特定数据对(如{id: 1}
或{{1})的方式解析数据只能用他们特定的附加数据读取?
由于要求,我将详细说明并显示数据
{foobar:foobar}
我想提取id和roll并尽可能将它们组合在一起
答案 0 :(得分:0)
我觉得它很方便File.ReadAllText
喜欢
string YourTextFileContent = File.ReadAllText(@"C:\\Program Files (x86)\\Python Data\\Rolldata.txt");
Console.WriteLine(YourTextFileContent);
您可以发布文件内容和预期输出以成对读取数据。鉴于Split,Regex将帮助您阅读此类数据,但我认为您的字符串可能是JSON字符串,因此获取数据可能更容易。
答案 1 :(得分:0)
您的数据看起来像json格式,但有一点语法问题。
首先我建议您参考http://www.json.org/ 并修复您的数据
[
{
'updated_at': '2016-12-20',
'roll': 3,
'hash': 'f114b7a0fd714256015b5a420ebe974f3977c53d3a3423f8532b58b69a6f3aa5',
'state': 3,
'created_at': '2016-12-20',
'id': 9947837
},
{
'updated_at': '2016-12-20',
'roll': 9,
'hash': '4e2a94657c9ca2c9206369d64fb84b03520875f870389bee1604fa4f74ef0cfa',
'state': 3,
'created_at': '2016-12-20',
'id': 9947838
},
{
'updated_at': '2016-12-20',
'roll': 0,
'hash': 'd5dc5c3378724deb071ae6bdaa0cfb05222db68e4afc441d9138f0e84609fc4c',
'state': 3,
'created_at': '2016-12-20',
'id': 9947839
}
]
其次,为你的json
创建一个C#类public class PropertiesYouWant
{
public int roll { get; set; }
public int id { get; set; }
}
最后,使用Newtonsoft.Json反序列化json字符串,如下所示
var result = JsonConvert.DeserializeObject<List<PropertiesYouWant>>(@"json above");
结果应该是您想要的集合。