Esempio n. 1
0
        /// <summary>
        /// Convert byte array to DataTable in string view
        /// </summary>
        /// <param name="option">2 for show '\r' and '\n'</param>
        private DataTable Arr_to_strDT(string str, ViewDataOption option)
        {
            DataTable dt = new DataTable();

            if (str == null)
            {
                return(dt);
            }

            for (int i = 0; i < this.bytes_per_row; ++i)
            {
                dt.Columns.Add("" + i);
            }

            DataRow row = null;

            for (int i = 0; i < str.Length; ++i)
            {
                int id = i % this.bytes_per_row;
                if (id == 0)
                {
                    row = dt.Rows.Add();
                }

                if (option == ViewDataOption.RawView_strLine)
                {
                    char c = str[i];
                    if (c == '\n')
                    {
                        row[id] = "\\n";
                    }
                    else if (c == '\r')
                    {
                        row[id] = "\\r";
                    }
                    else
                    {
                        row[id] = c;
                    }
                }
                else
                {
                    row[id] = str[i];
                }
            }
            return(dt);
        }
Esempio n. 2
0
        /// <summary>
        /// Set data source for view byte array
        /// </summary>
        /// <param name="option">0 for row by row view, 1 or 2 for raw view</param>
        public void Set_notePad_dataSource(byte[] arr, ViewDataOption option = ViewDataOption.None)
        {
            if (arr == null)
            {
                return;
            }
            string str = Encoding.UTF8.GetString(arr);

            this.Set_notePad_dataSource(str);

            if (option == ViewDataOption.RawView)
            {
                this.main_ultraGrid.DataSource = this.Arr_to_rawDT(arr);
            }
            else if (option == ViewDataOption.Row_by_Row)
            {
                this.main_ultraGrid.DataSource = this.Arr_to_lineDT(str);
            }
            else if (option == ViewDataOption.RawView_str || option == ViewDataOption.RawView_strLine)
            {
                this.main_ultraGrid.DataSource = this.Arr_to_strDT(str, option);
            }
        }