【发布时间】:2014-07-01 00:42:09
【问题描述】:
我有一个文本文件,其数据如下
[1] [apple] [market]
[2][toy]asdv[shop]sdvdsrdt
我已经创建了从 [] 中提取数据的代码。
foreach (var line in File.ReadLines(@location))
{
IEnumerable<string> str;
str = line.Split('[').Skip(1)
.Where(x => x.Contains(']')).Select(x => x.Split(']').First());
textBox1.Text = textBox1.Text + str.GetEnumerator() + Environment.NewLine;
}
所以现在我坚持将数据划分为单独的文本框,例如([1] [apple] [market]),我将能够显示数据是单独的文本框。 textbox1 中的值 1,textbox2 中的苹果,textbox3 中的市场。和另一个按钮,它将从文本框中删除数据并显示文本文件中的第二行数据。任何人都可以帮我解决这个问题
【问题讨论】:
-
您是否有理由尝试将该枚举器用作字符串?还有更多代码吗?除了没有将实际文本放入 textBox1 之外,究竟是什么问题?
-
其实我是新手,我使用的代码来自互联网。我使用它的原因是因为我只想获取 [] 中的数据并丢弃那些不是的。之后,我想将数据分成不同的文本框。
-
你在正确的轨道上,但如果你刚刚从这个互联网上得到这个,那么使用 LINQ 会放慢速度。从解析一行开始(就像您正在处理拆分一样)并从那里开始工作。 var words = line.Split('['); // 获取所有单独的单词迭代单词数组并在调试器中查看它以了解它是如何工作的。