删除字符串数组中的空字符串

在C#中处理文件时,遇到因空行导致的异常。解决方案包括使用Lambda表达式过滤空字符串:`lines.Where(s => !string.IsNullOrEmpty(s)).ToArray();`,或者通过List的ForEach方法和循环逐一检查并添加非空字符串。这些方法能有效避免因空行引起的程序错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

删除字符串数组中的空字符串


1.问题引入
在做C#作业的时候,想要读取文件中的字符串遇到异常。

 String[] lines = File.ReadAllLines(fileName);
 ArrayList array = new ArrayList();
                foreach(String stu in line)
                {
                    String[] s = stu.Split(' ');
                    array.Add(new Student(int.Parse(s[0]),s[1],char.Parse(s[2])));
                }

经排查发现是在使用File类的ReadAllLines静态函数时,将文本文件中的空行写入了字符串数组,继而引发下面将学生对象加入数组时出现异常.
2.问题解决
将字符串数组中的空行除去
1.使用Lambda表达式

lines.Where(s=>!string.IsNullOrEmpty(s)).ToArray();

2.使用List泛型集合的ForEach方法循环获取非空字符串

List<string> list = new List<string>();
        lines.ToList().ForEach((s)=>{if(!string.IsNullOrEmpty(S)){
            list.Add(s);
        }});

3.循环

List<string> list = new List<string>();
                foreach(String s in lines)
                {
                    if(!string.IsNullOrEmpty(s))
                    list.Add(s);
                }
                String[] line =  list.ToArray();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值