2012-05-16 40 views
2

可以说这是文件中的文本。它会删除冒号,并将每个单词放入它自己的数组中。例如:(C#) - 将每个单词存储在数组中的Split之间

exampleArray[0] = 'hello' 
exampleArray[1] = 'my' 
exampleArray[2] = 'name' 
exampleArray[3] = 'is' 
exampleArray[4] = 'lavi' 

这是我的代码:

private void button2_Click(object sender, EventArgs e) 
    { 
     listBox1.Items.Clear(); 
     OpenFileDialog ofd = new OpenFileDialog(); 
     ofd.Filter = "Text Files|*.txt"; 
     DialogResult result = ofd.ShowDialog(); 

     if(result == DialogResult.OK) 
     { 
      StreamReader textfile = new StreamReader(ofd.FileName); 

      string s = textfile.ReadToEnd(); 

      string[] split = s.Split(':', '\n'); 

      foreach (string word in split) 
       textBox1.Text = word[0].ToString(); 
       //listBox1.Items.Add(word); 


      ofd.Dispose(); 
     } 

的感谢!

编辑:我的意思说的是我怎么做就那么每个单词存储在一个数组,所以我可以稍后访问[0],[1],[2],等等?如果Split自动执行该操作,我如何访问每个单词?

+0

您可以发布文本文件的样本? –

+0

你想做什么?分词需要存储在哪里? – blitzen

+2

这个问题没有意义。在你调用'Split'的时候,你实际上创建了一个字符串数组,每个数据项都在它自己的索引中。请用您预期的输入和输出来澄清问题。 – Tejs

回答

7

它可以自动进行(String.split,这是)

String str = "hello:my:name:is:lavi"; 
var words = str.Split(":"); 
Console.WriteLine(words[1]); //This prints out 'my'; 
for (int i=0;i<words.Length;i++) { //This will print out each word on a separate line 
    Console.WriteLine(words[i]); 
} 
+1

'System.out.println'?在C#中? –

+0

对不起,不知道发生了什么事。我认为这是Java而我写了答案。 – blitzen

+0

很棒!非常感谢! – Lavi

0

在回答“我的意思是说什么是我该如何使它所以每个字被存储在一个数组,所以我可以访问它后来会与[0],[1],[2]等一起使用吗?如果Split自动执行该操作,我如何访问每个单词?“

VAR myWord =拆分[0 ... N]

0

只需使用这样的:

foreach (string word in split) textBox1.Text = word.ToString(); 
+0

,用于输出'你好',现在只需4个字! :P – Lavi

+0

foreach(分割中的字符串单词){ listBox1.Items.Add(word); } –

相关问题