private static void WriteHeader( TextWriter writer, Molecule molecule) { writer.Write('\n'); writer.Write(" Written by signature package"); writer.Write('\n'); writer.Write('\n'); int a = molecule.GetAtomCount(); int b = molecule.GetBondCount(); writer.Write($"{a,3:D}{b,3:D} 0 0 0 0 0 0 0 0999 V2000"); writer.Write('\n'); }
public bool Identical(Molecule other) { if (this.GetBondCount() != other.GetBondCount()) { return(false); } foreach (var bond in this.bonds) { if (other.bonds.Contains(bond)) { continue; } else { return(false); } } return(true); }
public static void WriteToStream(Stream stream, Molecule molecule) { try { using (var writer = new StreamWriter(stream)) { WriteHeader(writer, molecule); for (int i = 0; i < molecule.GetAtomCount(); i++) { WriteAtom(writer, molecule, i); } for (int i = 0; i < molecule.GetBondCount(); i++) { WriteBond(writer, molecule, i); } writer.Write("M END"); writer.Write('\n'); } } catch (IOException) { } }