Beispiel #1
0
        public static string ParseReplace(string parsedContent, string replace, string to)
        {
            if (replace.IndexOf(',') != -1)
            {
                var replaceList = TranslateUtils.StringCollectionToStringList(replace);
                var toList      = TranslateUtils.StringCollectionToStringList(to);

                if (replaceList.Count == toList.Count)
                {
                    for (var i = 0; i < replaceList.Count; i++)
                    {
                        parsedContent = parsedContent.Replace(replaceList[i], toList[i]);
                    }

                    return(parsedContent);
                }

                if (toList.Count == 1)
                {
                    foreach (var replaceStr in replaceList)
                    {
                        parsedContent = parsedContent.Replace(replaceStr, to);
                    }

                    return(parsedContent);
                }
            }

            string retval;

            if (replace.StartsWith("/") && replace.EndsWith("/"))
            {
                retval = RegexUtils.Replace(replace.Trim('/'), parsedContent, to);
            }
            else
            {
                retval = parsedContent.Replace(replace, to);
            }

            return(retval);
        }
Beispiel #2
0
        public static void Import(string filePath, out List <string> head, out List <List <string> > rows)
        {
            head = new List <string>();
            rows = new List <List <string> >();

            var valueList = new List <string>();

            //string content = FileUtils.ReadText(filePath, ECharset.utf_8);
            var content = FileUtils.ReadText(filePath, Encoding.UTF8);

            if (!string.IsNullOrEmpty(content))
            {
                valueList = TranslateUtils.StringCollectionToStringList(content, '\n');
            }

            if (valueList.Count > 1)
            {
                head      = TranslateUtils.StringCollectionToStringList(valueList[0]);
                valueList = valueList.GetRange(1, valueList.Count - 1);
            }

            foreach (var str in valueList)
            {
                var row = new List <string>();

                var value = str.Replace(@"""""", @"""");
                var list  = TranslateUtils.StringCollectionToStringList(value);

                if (list.Count != head.Count)
                {
                    continue;
                }
                foreach (var r in list)
                {
                    row.Add(r.Trim('"'));
                }
                rows.Add(row);
            }
        }