Je crée un Chatbot dont la base de données se trouve sous la forme d'un fichier calc sous open office.
La base de données du fichier open office est balayée afin de comparer des chaînes avec celles de l'utilisateur: j'utilise les fonctions de type :
MaFeuille := MonClasseur.GetByName('Feuille6');
Cellule := Mafeuille.getCellByPosition(0,i);
Cellule.GetValue/Cellule.SetString...
... Mon problème est que ça devient de plus en plus lent. Il me faut attendre pas loin de 3 secondes pour obtenir une réponse avec une base d'environ 2000 entrées.
Comment accélérer le temps de réponse sans passer par un algo dichotomique? En effet, un classement par ordre alphabétique ne peut pas être envisagé dans la mesure où les entrées peuvent contenir des portes logiques avec imbrications récursives.
J'avais pensé à transférer les données du tableur dans une mémoire dynamique type array de stringlist. Qu'en pensez-vous?
Partager