//---------------------------------------------------------- /// <summary> /// Decodifica BufferString. /// </summary> /// <returns>Array de Intrucciones</returns> public classInstruccion[] DecodificarBuffer() { List <classInstruccion> lIns = new List <classInstruccion>(); this.Buffer = BufferString.ToString(); this.Buffer.Replace(' ', 'n'); //------------------------------------------------------------ // Si no coincida Agrega caracter final de insttruccion. if (this.Buffer.LastIndexOf(this.SeparadorInstrucciones) != (this.BufferString.Length - 1)) { this.Buffer += this.SeparadorInstrucciones; } this.BufferString.Clear(); //------------------------------------------------------------ string PreInstruccion = string.Empty; foreach (char Letter in Buffer) { if (!char.Equals(this.SeparadorInstrucciones, Letter)) { PreInstruccion += Letter.ToString(); this.Buffer.Remove(0, 1); } else { this.SetInstrucciones.Add(PreInstruccion); PreInstruccion = string.Empty; } } //------------------------------------------------------------ foreach (string Instruccion in SetInstrucciones) { if (Instruccion.Contains(this.SeparadorIdentificadorValor)) { classInstruccion Ins = new classInstruccion(); Ins.Identificador = Instruccion.Substring(0, Instruccion.IndexOf(this.SeparadorIdentificadorValor)); Ins.Valor = Instruccion.Substring( (Instruccion.IndexOf(this.SeparadorIdentificadorValor) + 1), Instruccion.Length - (Instruccion.IndexOf(this.SeparadorIdentificadorValor) + 1)); lIns.Add(Ins); } } return(lIns.ToArray()); }