Char解析换行符(C#)

时间:2012-04-20 08:53:56

标签: c# split newline string-parsing

问题很简单,但我无法找到克服这个问题的方法。我的applciation收到一个字符串(stringID),这是一个ID列表,要么分开“;”+新行,要么只是新行,如:

ID1;
ID2;
ID3;

ID1
ID2
ID3

我尝试的是获取包含所有这些ID的表格;

我试过了:

string[] tabID = stringID.Split(';', char.Parse(Environment.NewLine));

并且

string[] tabID = stringID.Split(';', '\r\n')); 
string[] tabID = stringID.Split(';','\n');
什么都行不通,有人能帮帮我吗?非常感谢

5 个答案:

答案 0 :(得分:3)

使用StringReader类及其方法ReadLine来单独读取每一行。

答案 1 :(得分:2)

newline属性是一个字符串,可以是一个或两个字符长,因此在拆分时使用字符串。使用RemoveEmptyEntries选项,否则您将获得分号和换行符之间的空字符串。

string[] tabID = stringID.Split(
  new string[] { ";", Environment.NewLine },
  StringSplitOptions.RemoveEmptyEntries
);

答案 2 :(得分:1)

这应该有效:

 string [] split = words.Split(new Char [] {';','\n'});

Split有一个重载,需要char[]多个分隔符。

答案 3 :(得分:1)

尝试:

String test = "ID1;ID2;ID3;";
String[] testarr = test.Split(';');

答案 4 :(得分:0)

试试这个:

string[] tabID = stringID.Split(new Char[] { ';', '\n', '\r'},
                            StringSplitOptions.RemoveEmptyEntries);