如何在Dart中根据关键词读取文本中的指定行?
在Dart中提取文本的第二行内容
假设你有如下多行文本:
IMEI IMEII :869425035089513 IME12:869425035100520 SN:3ST0218A22000432
要提取其中第二行内容,有两种常用实现方式:
方法一:直接按换行分割取值
如果能确定文本格式固定、无多余空行,可直接按换行符分割文本后取对应索引的元素:
void main() { String text = ''' IMEI IMEII :869425035089513 IME12:869425035100520 SN:3ST0218A22000432 '''; List<String> lines = text.split('\n'); // 列表索引从0开始,第二行对应索引1,trim去除可能的前后空白 String secondLine = lines[1].trim(); print(secondLine); // 输出: IMEII :869425035089513 }
方法二:健壮性处理(兼容空行场景)
如果文本可能存在空行或空白行,先过滤无效行再取值更稳妥:
void main() { String text = ''' IMEI IMEII :869425035089513 IME12:869425035100520 SN:3ST0218A22000432 '''; // 分割后过滤空行和仅含空白的行 List<String> validLines = text.split('\n').where((line) => line.trim().isNotEmpty).toList(); // 先判断行数是否足够,避免索引越界 if (validLines.length >= 2) { String secondLine = validLines[1]; print(secondLine); // 输出: IMEII :869425035089513 } else { print('文本有效行数不足2行'); } }
内容的提问来源于stack exchange,提问作者Pravind Raja
相关产品推荐
相关产品推荐

