我正在尝试将文本文件中的字符串拆分为数组,以便可以将它们存储在类中,但是它不起作用;它不分割它,它在textfile.txt中返回相同的格式

using (StreamReader reader = new StreamReader("textfile.txt"))
{
  string line;
  while ((line = reader.ReadLine()) != null)
  {
    char[] delimiters = new char[] { '\t' };
    string[] parts = line.Split(delimiters, StringSplitOptions.RemoveEmptyEntries);
    for (int i = 0; i < parts.Length; i++)
    {
      MessageBox.Show(parts[i]);
    }

  }
}


文本文件包含:

George\t15\tStudent\tAddress\tB:\temp\profilepic.png


我希望它看起来像这样(拆分后):

George
15
Student
Address
profilepic.png


任何想法或帮助表示赞赏。

最佳答案

使用您提供的示例行,我认为您可以得到的最接近的示例行可能是使用以下正则表达式,也许如果您使用它,可以得到它不给您路径的信息,或者在循环中也可以进行检查路径并跳过它,这应该告诉您它是否是路径[a-zA-Z]:\\\w*?\\

string[] results = Regex.Split(line, @"(?<!B:)\\t|(?<=B:\\\w*?\\)");


它产生以下列表:


乔治
15
学生
地址
B:\ temp \
profilepic.png

关于c# - 字符串拆分成数组不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10252162/

10-14 15:32
查看更多