Exemple #1
0
        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));
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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);
        }
Exemple #5
0
        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);
        }
Exemple #6
0
        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;
            }
        }
Exemple #7
0
        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);
            }
        }
Exemple #8
0
        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);
        }
Exemple #9
0
        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);
        }