Why "2." doesn't even show in your output?
What happens if you split the cout into two lines?

std::cout<<"1."<<ts.readAll().toStdString()<<'\n';
std::cout <<"2."<<s.toStdString();