【发布时间】:2013-02-27 01:59:19
【问题描述】:
好吧,我一直在尝试随机化我的 Richtextbox 的行,现在它开始困扰我,因为我正在使用随机但它不起作用......当我使用它时,它会多次重复一些行次,根本不包括一些......
我看过:RichTextBox - sorting lines randomly
但这对我一点帮助都没有。
RichtextBox rtb = new RichTextBox();
Random R = new Random();
int y;
rtb.Text = "";
for (int i = 0; i < richTextBox1.Lines.Length; i++)
{
y = R.Next(0, richTextBox1.Lines.Length);
rtb.Text = rtb.Text + richTextBox1.Lines[y].ToString() + "\r\n";
}
richTextBox2.Text = rtb.Text;
例如如果我输入,
Lorem ipsum dolor sit amet,consectetur adipiscing elit。南仁 aliquam enim。 Proin 在 lacus magna。 Nam bibendum, augue non semper fringilla, ante est interdum ipsum, a egestas urna dolor vel risus。 Phasellus eget dui non augue pretium ullamcorper at ac Tellus。赛德 mattis risus 坐 amet metus dictum egestas。菜豆 enim, ac congue urna bibendum sed。 Sed iaculis pulvinar dui vel 三俗。 Etiam justo metus, consequat in pellentesque eu, eleifend id nunc。
它给了我,
Sed mattis risus sat amet metus dictum egestas。菜豆 blandit enim,ac congue urna bibendum sed。 Nam bibendum, augue non semper fringilla, ante est interdum ipsum, a egestas urna dolor vel 风险。 Sed mattis risus 坐 amet metus dictum egestas。菜豆 tempus blandit enim,ac congue urna bibendum sed。茯苓 pulvinar dui vel tristique。 Etiam justo metus,结果 pellentesque eu, eleifend id nunc。 Lorem ipsum dolor sit amet, consectetur adipiscing 精英。 Nam in aliquam enim。 Proin at lacus 麦格纳。
其中一行重复,而遗漏了一行……文本越长,它出现的频率越高。
我做 C# 的时间不长,如果这很简单,很抱歉。 :/
【问题讨论】:
-
您链接的问题的答案似乎完全符合您的要求 - 为什么它对您没有帮助?
-
那么,您希望这些行以随机顺序排列,而不是重复,并且最终必须提供所有行吗?就像处理一副纸牌......???
-
您要查找的是shuffle algorithm。
-
@Blorgbeard 那里的代码实际上对我不起作用...我对其进行了测试并多次修改...
-
@Robl 我会检查一下,谢谢。
标签: c#