AGSScriptModuleJérémy ZEHRCe module permet de lire et d'écrire des paramètres facilement dans des fichiersFichiersParametres1.0LString FichierParam::bonparam(String input, String param) { String separateur = this.sep; int index = input.IndexOf(separateur); if ((index < 0) || (input.Substring(0, index) != param)) return ""; return input.Substring(index+separateur.Length, input.Length - (index+separateur.Length-1)); } function FichierParam::Open(String fichier, String separateur) { if (!File.Exists(fichier)) { File* tmp = File.Open(fichier, eFileWrite); tmp.Close(); } this.fichier = fichier; this.sep = separateur; if (separateur == null) this.sep = ":"; return true; } String FichierParam::GetParam(String param) { File* fich = File.Open(this.fichier, eFileRead); while (!fich.EOF) { String ret = this.bonparam(fich.ReadRawLineBack(), param); if (ret != "") { return ret; fich.Close(); } } fich.Close(); return ""; } int FichierParam::GetInt(String param) { String rec = this.GetParam(param); return rec.AsInt; } function FichierParam::SetParam(String param, String valeur) { File* fich = File.Open(this.fichier, eFileRead); String tmp_name = "tmp"; while (File.Exists(tmp_name)) { tmp_name = tmp_name.Append("_tmp"); } File* tmp = File.Open(tmp_name, eFileWrite); while (!fich.EOF) { if (fich.Error) return false; tmp.WriteRawLine(fich.ReadRawLineBack()); } tmp.Close(); fich.Close(); fich = File.Open(this.fichier, eFileWrite); tmp = File.Open(tmp_name, eFileRead); String line; bool ecrit; while (!tmp.EOF) { line = tmp.ReadRawLineBack(); if (tmp.Error) return false; if (this.bonparam(line, param) != "") { fich.WriteRawLine(String.Format("%s%s%s", param, this.sep, valeur)); ecrit = true; } else fich.WriteRawLine(line); } if (!ecrit) fich.WriteRawLine(String.Format("%s%s%s", param, this.sep, valeur)); tmp.Close(); fich.Close(); File.Delete(tmp_name); return true; } function FichierParam::SetInt(String param, int valeur) { this.SetParam(param, String.Format("%d", valeur)); }œstruct FichierParam { String fichier; protected String sep; import function Open(String fichier, String separateur = 0); import String GetParam(String param); import function SetParam(String param, String valeur); import int GetInt(String param); import function SetInt(String param, int valeur); import String bonparam(String input, String param); // $AUTOCOMPLETEIGNORE$ };Æá2-ej÷´