我有一个包含重复字符串元素的文本文件
@SRR1582908.1 ILLUMINA_0154:8:1101:3556:1998/1 //1 line
CCTCGCTGGTCGATTTGTTTAACCGTTTTCTGTTCAGCGCCAAAATTATTTT //2 line
+ //3 line
BCCFFFFFHHHHHIIIIIHIHGHHGGIIIIIGHHDBGHHHIIGHIIGIHIII //4 line
和文件中的2900万个此类元素。我需要从每个元素中提取第二行到新的字符串数组中
我有一个正在执行的功能:
do
{
let textToOpen = try String(contentsOf: chosenFile!, encoding: .utf8)
var arrayOfTextLines = textToOpen.components(separatedBy: "\n")
arrayOfReads = stride(from: 1, to: arrayOfTextLines.endIndex, by: 4).map{(arrayOfTextLines[$0])}
}
catch
{}
代码可以正常工作,但是对于包含2900万个元素的文件而言,速度相对较慢。
主要缺点是
var arrayOfTextLines = textToOpen.components(separatedBy: "\n")
是否有加速该功能的方法?