//-------------------------------------- public static string Translate(string strAssembly, string strMessage, params string[] strParametres) { strAssembly = strAssembly.ToUpper(CultureInfo.InvariantCulture); if (strMessage.Length == 0) { return(""); } CFichierMessage fichier = (CFichierMessage)Instance.m_tableFichiers[strAssembly]; if (fichier == null) { int nPos = strMessage.LastIndexOf('|'); if (nPos >= 0) { try { int nMes = Int32.Parse(strMessage.Substring(nPos + 1)); strMessage = strMessage.Substring(0, nPos); } catch { return(strMessage); } } for (int nParametre = strParametres.Length - 1; nParametre >= 0; nParametre--) { strMessage = strMessage.Replace("@" + (nParametre + 1), strParametres[nParametre]); } return(strMessage); } return(fichier.Translate(strMessage, strParametres)); }
//-------------------------------------- public static CResultAErreur ReadFichier(string strAssembly, string strFichier) { CResultAErreur result = CResultAErreur.True; try { strAssembly = strAssembly.ToUpper(CultureInfo.InvariantCulture); StreamReader reader = new StreamReader(strFichier); CFichierMessage fichier = new CFichierMessage( ); result = fichier.ReadStream(reader); reader.Close(); if (result) { Instance.m_tableFichiers[strAssembly] = fichier; } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }
//-------------------------------------- public static CResultAErreur ReadFichier(string strFichier) { CResultAErreur result = CResultAErreur.True; try { StreamReader reader = new StreamReader(strFichier, System.Text.Encoding.Default); string strLigne = reader.ReadLine(); string strLastModule = ""; CFichierMessage lastModule = null; while (strLigne != null) { if (strLigne.Length > 3 && strLigne[0] == '[' && strLigne[strLigne.Length - 1] == ']') { strLastModule = strLigne.Substring(1, strLigne.Length - 2).ToUpper( CultureInfo.CurrentCulture); lastModule = (CFichierMessage)Instance.m_tableFichiers[strLastModule]; if (!String.IsNullOrEmpty(strLastModule) && lastModule == null) { lastModule = new CFichierMessage(); Instance.m_tableFichiers[strLastModule] = lastModule; } } else if (lastModule != null) { lastModule.AddLigne(strLigne); } strLigne = reader.ReadLine(); } reader.Close(); } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }