|
@@ -6,7 +6,7 @@ use std::{
|
|
|
collections::{HashMap, VecDeque},
|
|
collections::{HashMap, VecDeque},
|
|
|
fmt,
|
|
fmt,
|
|
|
fs::{File, self},
|
|
fs::{File, self},
|
|
|
- io::BufWriter, process::{Command, Stdio},
|
|
|
|
|
|
|
+ io::{BufWriter, Write}, process::{Command, Stdio},
|
|
|
};
|
|
};
|
|
|
use uuid::Uuid;
|
|
use uuid::Uuid;
|
|
|
use noodles_fasta as fasta;
|
|
use noodles_fasta as fasta;
|
|
@@ -419,13 +419,13 @@ pub fn write_fastq(fastq_path: &str, d: &Vec<Record>) -> Result<()> {
|
|
|
let file = File::create(fastq_path)?;
|
|
let file = File::create(fastq_path)?;
|
|
|
let mut writer = BufWriter::new(file);
|
|
let mut writer = BufWriter::new(file);
|
|
|
for record in d {
|
|
for record in d {
|
|
|
- seq_io::fastq::write_parts(
|
|
|
|
|
- &mut writer,
|
|
|
|
|
- record.qname(),
|
|
|
|
|
- None,
|
|
|
|
|
- &record.seq().as_bytes(),
|
|
|
|
|
- record.qual(),
|
|
|
|
|
- )?;
|
|
|
|
|
|
|
+ let name = String::from_utf8(record.qname().to_vec()).unwrap();
|
|
|
|
|
+ writer.write_all(format!("@{name}\n").as_bytes())?;
|
|
|
|
|
+ let seq = record.seq().as_bytes();
|
|
|
|
|
+ writer.write_all(&seq)?;
|
|
|
|
|
+ writer.write_all(b"\n+\n")?;
|
|
|
|
|
+ let qual = record.qual();
|
|
|
|
|
+ writer.write_all(qual)?;
|
|
|
}
|
|
}
|
|
|
Ok(())
|
|
Ok(())
|
|
|
}
|
|
}
|