private void ReadIList(IList list, Type eleType, XElement[] eleEleArr, ConfigAttributeTypes configAttributeTypes) { ConfigDataType configDataType = this.GetDataType(eleType); string value, eleName = null; object obj; switch (configDataType) { case ConfigDataType.IDictionary: foreach (var eleEle in eleEleArr) { obj = Activator.CreateInstance(eleType); this.ReadIDictionary((IDictionary)obj, eleEle.Elements(eleName).ToArray(), eleType, configAttributeTypes); list.Add(obj); } break; case ConfigDataType.IList: var itemType2 = this.GetIListElementType(eleType); eleName = this.GetIListElementName(itemType2); XElement[] eleEleArr2; foreach (var eleEle in eleEleArr) { eleEleArr2 = eleEle.Elements(eleName).ToArray(); obj = this.CreateIList(eleType, eleEleArr2.Length); this.ReadIList((IList)obj, itemType2, eleEleArr2, configAttributeTypes); list.Add(obj); } break; case ConfigDataType.Object: PropertyInfo[] objPropertyInfoArr = this.GetTypePropertyInfos(eleType); int index = 0; foreach (var eleEle in eleEleArr) { obj = Activator.CreateInstance(eleType); this.ReadConfigToXml(eleEle, objPropertyInfoArr, ref obj, configAttributeTypes); if (list is Array) { list[index++] = obj; } else { list.Add(obj); } } break; case ConfigDataType.Basic: foreach (var eleEle in eleEleArr) { value = XmlEx.GetXElementAttributeValue(eleEle, _VALUE, true); list.Add(this.StringToObject(value, eleType)); } break; default: throw new NotImplementedException(configDataType.ToString()); } }
public TailViewState Convert(State state) { if (state == null || state == State.Empty) { return(GetDefaultValue()); } var doc = XDocument.Parse(state.Value); var root = doc.ElementOrThrow(Structure.Root); var filename = root.ElementOrThrow(Structure.FileName); var selectedFilter = root.ElementOrThrow(Structure.SelectedFilter); var searchStates = root.Element(Structure.SearchList) .Elements(Structure.SearchItem) .Select((element, index) => { var text = XmlEx.ElementOrThrow((XElement)element, Structure.Text); var position = ParseEx.ParseInt(element.Attribute(Structure.Filter).Value).ValueOr(() => index); var filter = ParseEx.ParseBool(element.Attribute(Structure.Filter).Value).ValueOr(() => true); var useRegEx = ParseEx.ParseBool(element.Attribute(Structure.UseRegEx).Value).ValueOr(() => false); var highlight = ParseEx.ParseBool(element.Attribute(Structure.Highlight).Value).ValueOr(() => true); var alert = ParseEx.ParseBool(element.Attribute(Structure.Alert).Value).ValueOr(() => false); var ignoreCase = ParseEx.ParseBool(element.Attribute(Structure.IgnoreCase).Value).ValueOr(() => true); var swatch = element.Attribute(Structure.Swatch).Value; var hue = element.Attribute(Structure.Hue).Value; var icon = element.Attribute(Structure.Icon).Value; return(new SearchState(text, position, useRegEx, highlight, filter, alert, ignoreCase, swatch, icon, hue)); }).ToArray(); return(new TailViewState(filename, selectedFilter, searchStates)); }
private void ReadItem(XElement ele, IConfigValueConverter converter, PropertyInfo propertyInfo, object ownerObj) { if (!propertyInfo.CanWrite) { throw new ArgumentException($"属性{propertyInfo.DeclaringType.FullName}.{propertyInfo.Name}不支持set操作"); } object value; string valueStr = XmlEx.GetXElementAttributeValue(ele, _VALUE, true); if (valueStr == null) { value = null; } else { if (converter != null) { value = converter.ConvertFrom(propertyInfo, valueStr); } else { value = this.StringToObject(valueStr, propertyInfo.PropertyType); } } propertyInfo.SetValue(ownerObj, value, null); }
private void btnXmlExXmlNode_Click(object sender, RoutedEventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("logConfig.xml"); XmlNode loggerNode = xmlDoc.SelectSingleNode(@"logconfig/loger"); string name = XmlEx.GetXmlNodeAttributeValue(loggerNode, "level"); string name2 = XmlEx.GetXmlNodeAttributeValue(loggerNode, "level2", false); string name3 = XmlEx.GetXmlNodeAttributeValue(loggerNode, "level3", true); bool enable = XmlEx.GetXmlNodeAttributeValue <bool>(loggerNode, "enable"); bool enable2 = XmlEx.GetXmlNodeAttributeValue <bool>(loggerNode, "enable2"); xmlDoc.Load("UtilZ.Dotnet.Ex.xml"); XmlNode nameNode = xmlDoc.SelectSingleNode(@"doc/assembly/name"); string ret1 = XmlEx.GetXmlNodeValue(nameNode); string ret2 = XmlEx.GetXmlNodeValue(null, true); string ret3 = XmlEx.GetXmlNodeValue(null, false); XmlNode ageNode = XmlEx.CreateXmlNode(xmlDoc, "Age", "nongli", "2.15", "23"); int ret4 = XmlEx.GetXmlNodeValue <int>(ageNode); int ret5 = XmlEx.GetXmlNodeValue <int>(null); XmlEx.SetXmlNodeAttribute(ageNode, "bir", "2012", true); XmlEx.SetXmlNodeAttribute(ageNode, "bir2", null, true); XmlEx.SetXmlNodeAttribute(ageNode, "bir3", null, false); XmlNode noteNode = XmlEx.CreateXmlCDataSection(xmlDoc, "AgeNote", "comment..."); string ret6 = XmlEx.GetXmlNodeValue(noteNode, false); string ret7 = XmlEx.GetXmlNodeValue(noteNode, true); }
private void btnXmlEx_Click(object sender, RoutedEventArgs e) { XElement ele = new XElement("Person"); XmlEx.SetXElementAttribute(ele, "name", "yf", false); XmlEx.SetXElementAttribute(ele, "age", null, false); XmlEx.SetXElementAttribute(ele, "addr", "chengdu", true); XmlEx.SetXElementAttribute(ele, "sex", null, true); XmlEx.SetXElementAttribute(ele, "name", null, false); XmlEx.SetXElementAttribute(ele, "addr", null, true); }
private void ReadIDictionary(IDictionary dic, XElement[] eleEleArr, Type eleType, ConfigAttributeTypes configAttributeTypes) { XElement keyEle, valueEle; string keyStr, valueStr; object key, value = null; Type[] argsTypeArr = eleType.GetGenericArguments(); ConfigDataType configDataType = this.GetDataType(argsTypeArr[1]); string name2 = null, eleName2 = null, eleName3 = null; Type eleType2 = null; PropertyInfo[] objPropertyInfoArr = null; XElement[] eleEleArr2 = null; foreach (var childEle in eleEleArr) { keyEle = childEle.Element(_KEY); keyStr = XmlEx.GetXElementAttributeValue(keyEle, _VALUE, false); key = this.StringToObject(keyStr, argsTypeArr[0]); valueEle = childEle.Element(_VALUE); switch (configDataType) { case ConfigDataType.Basic: valueStr = XmlEx.GetXElementAttributeValue(valueEle, _VALUE, true); if (valueStr == null) { value = null; } else { value = this.StringToObject(valueStr, argsTypeArr[1]); } break; case ConfigDataType.IDictionary: if (name2 == null) { name2 = this.GetIListElementName(argsTypeArr[1]); } if (eleName2 == null) { eleName2 = this.GetIDictionaryElementName(null); } value = Activator.CreateInstance(argsTypeArr[1]); this.ReadIDictionary((IDictionary)value, valueEle.XPathSelectElements($"{name2}/{eleName2}").ToArray(), argsTypeArr[1], configAttributeTypes); break; case ConfigDataType.IList: if (eleType2 == null) { eleType2 = this.GetIListElementType(argsTypeArr[1]); } if (eleName2 == null) { eleName2 = this.GetIListElementName(argsTypeArr[1]); } if (eleName3 == null) { eleName3 = this.GetIListElementName(eleType2); } eleEleArr2 = valueEle.XPathSelectElements($"{eleName2}/{eleName3}").ToArray(); value = this.CreateIList(argsTypeArr[1], eleEleArr2.Length); this.ReadIList((IList)value, eleType2, eleEleArr2, configAttributeTypes); break; case ConfigDataType.Object: if (objPropertyInfoArr == null) { objPropertyInfoArr = this.GetTypePropertyInfos(argsTypeArr[1]); } if (eleName2 == null) { eleName2 = this.GetIListElementName(argsTypeArr[1]); } value = Activator.CreateInstance(argsTypeArr[1]); this.ReadConfigToXml(valueEle.Element(eleName2), objPropertyInfoArr, ref value, configAttributeTypes); break; default: throw new NotSupportedException(configDataType.ToString()); } dic[key] = value; } }
private void LoadColumnsSetting() { try { var columnSettingFilePath = this._getColSettingFilePath(); if (string.IsNullOrWhiteSpace(columnSettingFilePath) || !File.Exists(columnSettingFilePath)) { return; } var xdoc = XDocument.Load(columnSettingFilePath); var rootEle = xdoc.Root; int count = int.Parse(XmlEx.GetXElementAttributeValue(rootEle, "Count")); if (this._dgv.Columns.Count != count) { //项数不同,同数据源名称,但是内容有变,不加载,删除无效的设置文件 File.Delete(columnSettingFilePath); return; } //加载数据 List <dynamic> items = new List <dynamic>(); try { foreach (var itemEle in rootEle.Elements("Item")) { dynamic item = new ExpandoObject(); item.Name = XmlEx.GetXElementAttributeValue(itemEle, "Name"); item.Width = int.Parse(XmlEx.GetXElementAttributeValue(itemEle, "Width")); item.DisplayIndex = int.Parse(XmlEx.GetXElementAttributeValue(itemEle, "DisplayIndex")); item.Visible = bool.Parse(XmlEx.GetXElementAttributeValue(itemEle, "Visible")); items.Add(item); if (!this._dgv.Columns.Contains(item.Name)) { //不包含该列,同数据源名称,但是内容有变,不加载 return; } } } catch (Exception exi) { //数据有错误,不加载,删除无效的设置文件 Loger.Error(exi); File.Delete(columnSettingFilePath); return; } foreach (dynamic item in items) { DataGridViewColumn col = this._dgv.Columns[item.Name]; col.Width = item.Width; col.DisplayIndex = item.DisplayIndex; col.Visible = item.Visible; col.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet; } } catch (Exception ex) { Loger.Error(ex); } finally { this.OnRaiseColumnVisibleChangedNotify(null, true); } }
private string ConvertString(string sFrom, string TypeOfConversion) { string FromText = txtFrom.Text; string ToText = string.Empty; byte[] oFromBytes = null; //byte[] oToBytes = null; //byte[] ToBytes; System.Text.Encoding oUtf8Encoding = System.Text.Encoding.UTF8; System.Text.Encoding oAsciiEncoding = System.Text.Encoding.ASCII; string sError = string.Empty; switch (TypeOfConversion) { case UrlEncode: ToText = System.Web.HttpUtility.UrlEncode(FromText); break; case UrlDecode: ToText = System.Web.HttpUtility.UrlDecode(FromText); break; case UrlEncodeUnicode: ToText = System.Web.HttpUtility.UrlEncode(FromText); //ToText = System.Web.HttpUtility.UrlEncodeUnicode(FromText); break; case HtmlEncode: try { ToText = System.Web.HttpUtility.HtmlEncode(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case HtmlDecode: try { ToText = System.Web.HttpUtility.HtmlDecode(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case Base64Encode: try { oFromBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(FromText); ToText = System.Convert.ToBase64String(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case Base64Decode: try { oFromBytes = System.Convert.FromBase64String(FromText); ToText = System.Text.ASCIIEncoding.ASCII.GetString(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; //case Utf8Encode: // try // { // oFromBytes = System.Text.Encoding.Default.GetBytes(FromText); // ToText = System.Text.Encoding.UTF8.GetString(oFromBytes); // ToText += "\r\n"; // Console.WriteLine("Encoded bytes:"); // foreach (Byte b in oFromBytes) // { // ToText += string.Format("[{0}]", b); // } // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; //case Utf8Decode: // try // { // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToText = oUtf8Encoding.GetString(oFromBytes); // //oFromBytes = oUtf8Encoding.GetBytes(FromText); // //oToBytes = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("iso-8859-1"), oFromBytes); // //ToText = System.Text.Encoding.UTF8.GetString(oToBytes); // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; case XmlEncode: try { XmlDocument oXmlDocument = new XmlDocument(); XmlElement oXmlElement = oXmlDocument.CreateElement("SomeElement"); oXmlElement.InnerText = FromText; ToText = oXmlElement.InnerXml; oXmlElement = null; oXmlDocument = null; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; //case XmlEscape: // try // { // ToText = System.Security.SecurityElement.Escape(FromText); // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; //case QuotedPrintableDecode: // // http://stackoverflow.com/questions/2226554/c-class-for-decoding-quoted-printable-encoding // try // { // //string sWork = FromText; // //var occurences = new Regex(@"=[0-9A-Z]{2}", RegexOptions.Multiline); // //var matches = occurences.Matches(sWork); // //foreach (Match match in matches) // //{ // // char hexChar= (char) Convert.ToInt32(match.Groups[0].Value.Substring(1), 16); // // sWork = sWork.Replace(match.Groups[0].Value, hexChar.ToString()); // //} // //ToText = sWork.Replace("=\r\n", ""); // ToText = DecodeQuotedPrintables(FromText, "iso-8859-1"); // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; case XmlDecode: try { //ToText = XmlConvert.DecodeName(FromText); XmlDocument oXmlDocument = new XmlDocument(); XmlElement oXmlElement = oXmlDocument.CreateElement("SomeElement"); oXmlElement.InnerXml = FromText; ToText = oXmlElement.InnerText; oXmlElement = null; oXmlDocument = null; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBeautify: try { ToText = ""; XmlDocument oXmlDocument = new XmlDocument(); oXmlDocument.InnerXml = FromText; try { StringBuilder sb = new StringBuilder(); XmlWriterSettings settings = new XmlWriterSettings { Indent = true, IndentChars = " ", NewLineChars = "\r\n", NewLineHandling = NewLineHandling.Replace, CheckCharacters = false }; using (XmlWriter writer = XmlWriter.Create(sb, settings)) { oXmlDocument.Save(writer); ToText = sb.ToString(); oXmlDocument = null; settings = null; } } catch (System.Xml.XmlException XmlEx) { MessageBox.Show(XmlEx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBase64ToHex: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexStringFromByteArray(oFromBytes, false); // Now convert it to a hex string. } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBase64ToHexSpaceDelimited: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexStringFromByteArray(oFromBytes, true); // Now convert it to a hex string. } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlTextToHex: try { System.Text.ASCIIEncoding oEncoding = new System.Text.ASCIIEncoding(); oFromBytes = oEncoding.GetBytes(sFrom); ToText = StringHelper.HexStringFromByteArray(oFromBytes, false); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlTextToHexSpaceDelimited: try { System.Text.ASCIIEncoding oEncoding = new System.Text.ASCIIEncoding(); oFromBytes = oEncoding.GetBytes(sFrom); ToText = StringHelper.HexStringFromByteArray(oFromBytes, true); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToCleanHexText: try { if (StringHelper.CleanHexString(FromText, ref ToText, ref sError) == false) { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToText: try { if (StringHelper.RoughHexStringToByteArray(FromText, ref oFromBytes, ref sError) == true) { ToText = System.Text.Encoding.ASCII.GetString(oFromBytes); } else { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToBase64: try { if (StringHelper.RoughHexStringToByteArray(FromText, ref oFromBytes, ref sError) == true) { //oFromBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(FromText); // First Turn hex string into an byte array. ToText = System.Convert.ToBase64String(oFromBytes); // Now convert to a Base64 string. } else { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexDumpText: try { ToText = StringHelper.DumpString(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBase64ToHexDump: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexDumpFromByteArray(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlConvertVerifyXmlChars: try { ToText = XmlConvert.VerifyXmlChars(FromText); if (ToText != null) { MessageBox.Show("Xml characters verfied."); } } catch (XmlException XmlExx) { MessageBox.Show(XmlExx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case UnicodeStringToHexString: try { ToText = StringHelper.UnicodeStringToHexString(FromText); } catch (Exception Ex) { MessageBox.Show(Ex.ToString(), "Error"); } break; case HexStringToUnicodeString: try { ToText = StringHelper.HexStringToUnicodeString(FromText); } catch (Exception Ex) { MessageBox.Show(Ex.ToString(), "Error"); } break; case StringStatistics: try { ToText = StringHelper.GetStringStats(FromText); } catch (XmlException XmlExx) { MessageBox.Show(XmlExx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case CheckForNonASCIICharacters: try { ToText = StringHelper.CheckResponseForOddCharacters(FromText); } catch (Exception exCheckForInvalidCharacters) { MessageBox.Show(exCheckForInvalidCharacters.ToString(), "Error"); } break; case sRemoveControlCodes: try { ToText = StringHelper.RemoveControlCodes(FromText); } catch (Exception exRemoveControlCodes) { MessageBox.Show(exRemoveControlCodes.ToString(), "Error"); } break; case sRemoveNonAsciiAndControlCharacters: try { ToText = StringHelper.RemoveNonAsciiAndControlCharacters(FromText); } catch (Exception exRemoveNonAsciiAndControlCharacters) { MessageBox.Show(exRemoveNonAsciiAndControlCharacters.ToString(), "Error"); } break; case sRemoveNonExtendedAsciiAndControlCharacters: try { ToText = StringHelper.RemoveNonExtendedAsciiAndControlCharacters(FromText); } catch (Exception exRemoveNonExtendedAsciiAndControlCharacters) { MessageBox.Show(exRemoveNonExtendedAsciiAndControlCharacters.ToString(), "Error"); } break; //case Utf8DecodeToAscii: // oUtf8Encoding = System.Text.Encoding.UTF8; // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToBytes = Encoding.Convert(Encoding.UTF8, Encoding.UTF8, oFromBytes); // ToText = System.Text.Encoding.ASCII.GetString(ToBytes); // break; //case Utf32DecodeToAscii: // oUtf8Encoding = System.Text.Encoding.UTF8; // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToBytes = Encoding.Convert(Encoding.UTF32, Encoding.UTF32, oFromBytes); // ToText = System.Text.Encoding.ASCII.GetString(ToBytes); // break; } return(ToText); }
private string ConvertString(string sFrom, string TypeOfConversion) { string FromText = txtFrom.Text; string ToText = string.Empty; byte[] oFromBytes = null; //byte[] ToBytes; System.Text.Encoding oUtf8Encoding = System.Text.Encoding.UTF8; System.Text.Encoding oAsciiEncoding = System.Text.Encoding.ASCII; string sError = string.Empty; switch (TypeOfConversion) { case UrlEncode: ToText = System.Web.HttpUtility.UrlEncode(FromText); break; case UrlDecode: ToText = System.Web.HttpUtility.UrlDecode(FromText); break; case UrlEncodeUnicode: ToText = System.Web.HttpUtility.UrlEncodeUnicode(FromText); break; case HtmlEncode: try { ToText = System.Web.HttpUtility.HtmlEncode(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case HtmlDecode: try { ToText = System.Web.HttpUtility.HtmlDecode(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case Base64Encode: try { oFromBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(FromText); ToText = System.Convert.ToBase64String(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case Base64Decode: try { oFromBytes = System.Convert.FromBase64String(FromText); ToText = System.Text.ASCIIEncoding.ASCII.GetString(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; //case Utf8Encode: // try // { // oFromBytes = System.Text.Encoding.Default.GetBytes(FromText); // ToText = System.Text.Encoding.UTF8.GetString(oFromBytes); // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; //case Utf8Decode: // try // { // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToBytes = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("iso-8859-1"), oFromBytes); // ToText = System.Text.Encoding.UTF8.GetString(ToBytes); // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; //case XmlEncode: // try // { // XmlDocument oXmlDocument = new XmlDocument(); // XmlElement oXmlElement = oXmlDocument.CreateElement("SomeElement"); // oXmlElement.InnerText = FromText; // ToText = oXmlElement.InnerXml; // oXmlElement = null; // oXmlDocument = null; // } // catch (Exception ex) // { // MessageBox.Show(ex.ToString(), "Error"); // } // break; case XmlBase64ToHex: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexStringFromByteArray(oFromBytes, false); // Now convert it to a hex string. } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBase64ToHexSpaceDelimited: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexStringFromByteArray(oFromBytes, true); // Now convert it to a hex string. } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlTextToHex: try { System.Text.ASCIIEncoding oEncoding = new System.Text.ASCIIEncoding(); oFromBytes = oEncoding.GetBytes(sFrom); ToText = StringHelper.HexStringFromByteArray(oFromBytes, false); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlTextToHexSpaceDelimited: try { System.Text.ASCIIEncoding oEncoding = new System.Text.ASCIIEncoding(); oFromBytes = oEncoding.GetBytes(sFrom); ToText = StringHelper.HexStringFromByteArray(oFromBytes, true); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToCleanHexText: try { if (StringHelper.CleanHexString(FromText, ref ToText, ref sError) == false) { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToText: try { if (StringHelper.RoughHexStringToByteArray(FromText, ref oFromBytes, ref sError) == true) { ToText = System.Text.Encoding.ASCII.GetString(oFromBytes); } else { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexToBase64: try { if (StringHelper.RoughHexStringToByteArray(FromText, ref oFromBytes, ref sError) == true) { //oFromBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(FromText); // First Turn hex string into an byte array. ToText = System.Convert.ToBase64String(oFromBytes); // Now convert to a Base64 string. } else { ToText = sError; } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlHexDumpText: try { ToText = StringHelper.DumpString(FromText); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlEncode: try { XmlDocument oXmlDocument = new XmlDocument(); XmlElement oXmlElement = oXmlDocument.CreateElement("SomeElement"); oXmlElement.InnerText = FromText; ToText = oXmlElement.InnerXml; oXmlElement = null; oXmlDocument = null; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlDecode: try { //ToText = XmlConvert.DecodeName(FromText); XmlDocument oXmlDocument = new XmlDocument(); XmlElement oXmlElement = oXmlDocument.CreateElement("SomeElement"); oXmlElement.InnerXml = FromText; ToText = oXmlElement.InnerText; oXmlElement = null; oXmlDocument = null; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBeautify: try { ToText = ""; XmlDocument oXmlDocument = new XmlDocument(); oXmlDocument.InnerXml = FromText; try { StringBuilder sb = new StringBuilder(); XmlWriterSettings settings = new XmlWriterSettings { Indent = true, IndentChars = " ", NewLineChars = "\r\n", NewLineHandling = NewLineHandling.Replace, CheckCharacters = false }; using (XmlWriter writer = XmlWriter.Create(sb, settings)) { oXmlDocument.Save(writer); ToText = sb.ToString(); oXmlDocument = null; settings = null; } } catch (System.Xml.XmlException XmlEx) { MessageBox.Show(XmlEx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlBase64ToHexDump: try { oFromBytes = System.Convert.FromBase64String(FromText); // Convert to Bytes first. ToText = StringHelper.HexDumpFromByteArray(oFromBytes); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case XmlConvertVerifyXmlChars: try { ToText = XmlConvert.VerifyXmlChars(FromText); if (ToText != null) { MessageBox.Show("Xml characters verfied."); } } catch (XmlException XmlExx) { MessageBox.Show(XmlExx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; //case Utf8DecodeToAscii: // oUtf8Encoding = System.Text.Encoding.UTF8; // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToBytes = Encoding.Convert(Encoding.UTF8, Encoding.UTF8, oFromBytes); // ToText = System.Text.Encoding.ASCII.GetString(ToBytes); // break; //case Utf32DecodeToAscii: // oUtf8Encoding = System.Text.Encoding.UTF8; // oFromBytes = oUtf8Encoding.GetBytes(FromText); // ToBytes = Encoding.Convert(Encoding.UTF32, Encoding.UTF32, oFromBytes); // ToText = System.Text.Encoding.ASCII.GetString(ToBytes); // break; case StringStatistics: try { ToText = StringHelper.GetStringStats(FromText); } catch (XmlException XmlExx) { MessageBox.Show(XmlExx.ToString(), "Error"); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error"); } break; case CheckForNonASCIICharacters: try { ToText = StringHelper.CheckResponseForOddCharacters(FromText); } catch (Exception exCheckForInvalidCharacters) { MessageBox.Show(exCheckForInvalidCharacters.ToString(), "Error"); } break; case sRemoveControlCodes: try { ToText = StringHelper.RemoveControlCodes(FromText); } catch (Exception exRemoveControlCodes) { MessageBox.Show(exRemoveControlCodes.ToString(), "Error"); } break; case sRemoveNonAsciiAndControlCharacters: try { ToText = StringHelper.RemoveNonAsciiAndControlCharacters(FromText); } catch (Exception exRemoveNonAsciiAndControlCharacters) { MessageBox.Show(exRemoveNonAsciiAndControlCharacters.ToString(), "Error"); } break; case sRemoveNonExtendedAsciiAndControlCharacters: try { ToText = StringHelper.RemoveNonExtendedAsciiAndControlCharacters(FromText); } catch (Exception exRemoveNonExtendedAsciiAndControlCharacters) { MessageBox.Show(exRemoveNonExtendedAsciiAndControlCharacters.ToString(), "Error"); } break; } return(ToText); }