import os
from rdkit import Chem

# 获取当前目录下所有的.sdf文件
sdf_files = [f for f in os.listdir() if f.endswith('.sdf')]

# 打开输出文件smi.txt
with open('smi.txt', 'w') as output_file:
    # 遍历每个.sdf文件
    for sdf_file in sdf_files:
        # 读取.sdf文件并转换为分子对象
        mol = Chem.MolFromMolFile(sdf_file)
        
        if mol:
            # 将分子对象转换为SMILES字符串
            smi = Chem.MolToSmiles(mol)
            
            # 写入SMILES字符串到输出文件
            output_file.write(f"{smi}\n")
            print(f"Converted {sdf_file} to SMILES and saved to smi.txt")
        else:
            print(f"Failed to read {sdf_file}")

