使用控制字符解析文件

时间:2011-12-21 16:16:11

标签: c# char

我有这个文件,其中包含控制字符,如十进制29,30。在记事本++中,它们分别出现在GS,RS中。在C#中我正在做一个File.ReadAllLines ...然后对于每一行,我需要在这些控制字符上拆分整行。

让我们说我有一条线:

... 1RSACCTGS2RS718GS3RS425

我期望的元素是1,ACCT,2,718,3,425 ......

我的意思是我可以将该行放入toCharArray然后检查每个char是否为控件,如下所示:

if(char.IsControl(c))但我不认为效率太高。一个正则表达式会很好我想但不知道如何写它。有什么想法吗?

谢谢,

大卫

1 个答案:

答案 0 :(得分:0)

使用string.Split方法,并传递一个您想要拆分的控制字符数组:

// Add other special characters on which you'd like to split to the array below
var tokens = line.Split(new[] {(char) 29, (char) 30});

现在tokens包含原始行的子字符串数组,这些子字符串由特殊字符分隔。连续多个特殊字符将被忽略。