Example #1
0
        public TextAssetTableHelper(IEnumerable <string> rowSplitStrings = null,
                                    IEnumerable <string> colSplitStrings = null, Encoding encoding = null)
        {
            TextAssetEncoding = encoding ?? Encoding.UTF8;

            int Comp(string a, string b)
            {
                return(b.Length.CompareTo(a.Length));
            }

            var tmpList = new List <string>();

            // row split strings
            tmpList.AddRange(rowSplitStrings?.ToArray() ?? new string[0]);
            tmpList.Sort(Comp);
            _rowSplitStrings = tmpList.ToArray();

            // col split strings
            tmpList.Clear();
            tmpList.AddRange(colSplitStrings?.ToArray() ?? new string[0]);
            tmpList.Sort(Comp);
            _colSplitStrings = tmpList.ToArray();

            // invalid col strings
            tmpList.Clear();
            tmpList.AddRange(RowSplitStrings);
            tmpList.AddRange(ColSplitStrings);
            tmpList.Sort(Comp);
            _invalidColStrings = tmpList.ToArray();

            Enabled = ColSplitStrings.Any() && RowSplitStrings.Any();
        }
        public TextAssetHelper(IEnumerable <string> rowSplitStrings = null, IEnumerable <string> colSplitStrings = null)
        {
            int comp(string a, string b) => b.Length.CompareTo(a.Length);

            List <string> tmpList = new List <string>();

            // row split strings
            tmpList.AddRange(rowSplitStrings?.ToArray() ?? new string[0]);
            tmpList.Sort(comp);
            RowSplitStrings = tmpList.ToArray();

            // col split strings
            tmpList.Clear();
            tmpList.AddRange(colSplitStrings?.ToArray() ?? new string[0]);
            tmpList.Sort(comp);
            ColSplitStrings = tmpList.ToArray();

            // invalid col strings
            tmpList.Clear();
            tmpList.AddRange(RowSplitStrings);
            tmpList.AddRange(ColSplitStrings);
            tmpList.Sort(comp);
            InvalidColStrings = tmpList.ToArray();

            Enabled = ColSplitStrings.Any() && RowSplitStrings.Any();
        }
 public IEnumerable <string> SplitTableToRows(string table)
 {
     if (!IsTable(table))
     {
         return(null);
     }
     return(table.Split(RowSplitStrings.ToArray(), StringSplitOptions.None));
 }
Example #4
0
 public IEnumerable <string> SplitTableToRows(string table)
 {
     if (!IsTable(table))
     {
         throw new ArgumentException("textAsset does not contain a table");
     }
     return(table.Split(RowSplitStrings.ToArray(), StringSplitOptions.None));
 }