Thomas vor 2 Jahren
Ursprung
Commit
4aa999e4e0
1 geänderte Dateien mit 8 neuen und 8 gelöschten Zeilen
  1. 8 8
      src/lib.rs

+ 8 - 8
src/lib.rs

@@ -6,7 +6,7 @@ use std::{
     collections::{HashMap, VecDeque},
     fmt,
     fs::{File, self},
-    io::BufWriter, process::{Command, Stdio},
+    io::{BufWriter, Write}, process::{Command, Stdio},
 };
 use uuid::Uuid;
 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 mut writer = BufWriter::new(file);
     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(())
 }