string s = "001870028500698005680036300476"; ArrayList list = new ArrayList(); for( int i=3; i < s.Length; i=i+5 ) { list.Add(s.Substring(i, 2); } 基本上跟楼上的一样,少建几个string对象而已:)
其实就是3位学号加2位成绩的组合喽?
string s = "001870028500698005680036300476";
ArrayList list = new ArrayList();
while (s.Length > 0) {
string sub = s.Substring(0, 5); //取前5个
s = s.Substring(5); //把前5个去掉
string num = sub.Substring(0, 3); //学号
string mark = sub.Substring(3); //成绩
list.Add(mark); //放入ArrayList
}
当然这个是很没效率的做法,不过看起来简洁
如果,字符串是这样的呢? string s="001 87 002 85 006 98 005 68 003 63 004 76";