public static string MolToMolBlock(IAtomContainer mol, bool forceV3000 = false) { using (var sr = new StringWriter()) { IChemObjectWriter w; if (forceV3000 || mol.Atoms.Count > 999 || mol.Bonds.Count > 999) { w = new MDLV3000Writer(sr); } else { w = new MDLV2000Writer(sr); } try { w.Write(mol); } finally { w.Close(); } return(sr.ToString()); } }
/// <summary> /// Convert mol to V3000 Molfile /// </summary> /// <param name="mol"></param> /// <returns></returns> public static string AtomContainerToMolFileV3000(IAtomContainer mol) { java.io.StringWriter sw = new java.io.StringWriter(); MDLV3000Writer writer = new MDLV3000Writer(sw); writer.write(mol); writer.close(); sw.close(); string molFile = sw.toString(); return(molFile); }
/// <summary> /// Convert mol to V3000 Molfile /// </summary> /// <param name="mol"></param> /// <returns></returns> public static string AtomContainerToMolFileV3000(IAtomContainer mol) { StringWriter sw = new StringWriter(); MDLV3000Writer writer = new MDLV3000Writer(sw); writer.Write(mol); writer.Close(); sw.Close(); string molFile = sw.ToString(); return(molFile); }