Wednesday, 17 June 2020

key value pair

private static KeyValuePair<ArrayList, ArrayList> GetXmlKeyValuePairForRiva(string XmlFile)
        {
            ArrayList node = new ArrayList();
            ArrayList value = new ArrayList();
            try
            {
                Int32 count = 500;

                String[] spearator = { "</InputXml>" };
                String[] nodeValueSpearator = { "<CosemObject Name=" };
                String[] nodeSpearator = { "\" " };
                String[] valuesSeparator = { ">" };
                String[] valueSeparator = { "</" };
                XmlFile = File.ReadAllText(@"C:\Users\asamantr\OneDrive - Itron\Desktop\Automation\DeviceCommandExport.txt");

                String[] strList = XmlFile.Split(spearator, count, StringSplitOptions.RemoveEmptyEntries);
                String[] strNodeValueDetails = strList[1].Split(nodeValueSpearator, count, StringSplitOptions.RemoveEmptyEntries);
                node.Clear();
                value.Clear();
                for (int i = 1; i < strNodeValueDetails.Length; i++)
                {
                    string xmlNode = (strNodeValueDetails[i].Split(nodeSpearator, count, StringSplitOptions.RemoveEmptyEntries))[0].Replace("\"", string.Empty);

                    string stringValueDetails = (strNodeValueDetails[i].Split(nodeSpearator, count, StringSplitOptions.RemoveEmptyEntries))[3];
                    string stringValue = (stringValueDetails.Split(valuesSeparator, count, StringSplitOptions.RemoveEmptyEntries)).Length <= 3 ? "" : stringValueDetails.Split(valuesSeparator, count, StringSplitOptions.RemoveEmptyEntries)[3];

                    string xmlNodeValue = xmlNode == string.Empty || (stringValue.StartsWith("\r\n") || stringValue == string.Empty) ? "" : stringValue.Split(valueSeparator, count, StringSplitOptions.RemoveEmptyEntries)[0];

                    node.Add(xmlNode);
                    value.Add(xmlNodeValue);
                }
            }
            catch (Exception ex)
            {

            }
            return new KeyValuePair<ArrayList, ArrayList>(node, value);
        }

No comments:

Post a Comment