Example #1
0
        public CsvEntry Clone()
        {
            string[] array = (string[])strings.ToArray().Clone();

            CsvEntry e = new CsvEntry(array);

            return(e);
        }
Example #2
0
        void init(Buf data, Encoding encoding)
        {
            if (encoding == null)
            {
                encoding = defaultEncoding;
            }

            int      bomSize = 0;
            Encoding enc2    = null;

            if (data != null)
            {
                enc2 = Str.CheckBOM(data.ByteData, out bomSize);
            }
            if (bomSize >= 1)
            {
                data = new Buf(Util.RemoveStartByteArray(data.ByteData, bomSize));
            }
            if (enc2 != null)
            {
                encoding = enc2;
            }
            this.encoding = encoding;

            entryList = new List <CsvEntry>();

            if (data != null)
            {
                MemoryStream ms = new MemoryStream(data.ByteData);
                StreamReader sr = new StreamReader(ms, this.encoding);

                while (true)
                {
                    string s = sr.ReadLine();

                    if (s == null)
                    {
                        break;
                    }

                    char[]   sep     = { ',' };
                    string[] strings = s.Trim().Split(sep, StringSplitOptions.None);

                    CsvEntry e = new CsvEntry(strings);
                    Add(e);
                }
            }
        }
Example #3
0
        int sortInternal(CsvEntry e1, CsvEntry e2)
        {
            if (csvCompareMethod != null)
            {
                object o1 = e1.Convert(csvCompareType, csvCompareIndex);
                object o2 = e2.Convert(csvCompareType, csvCompareIndex);

                return(csvCompareMethod(o1, o2) * (csvCompareReverse ? -1 : 1));
            }
            else
            {
                IComparable o1 = (IComparable)e1.Convert(csvCompareType, csvCompareIndex);
                IComparable o2 = (IComparable)e2.Convert(csvCompareType, csvCompareIndex);

                return(o1.CompareTo(o2) * (csvCompareReverse ? -1 : 1));
            }
        }
Example #4
0
 public void Add(CsvEntry e)
 {
     entryList.Add(e);
 }
Example #5
0
		public CsvEntry Clone()
		{
			string[] array = (string[])strings.ToArray().Clone();

			CsvEntry e = new CsvEntry(array);

			return e;
		}
Example #6
0
		int sortInternal(CsvEntry e1, CsvEntry e2)
		{
			if (csvCompareMethod != null)
			{
				object o1 = e1.Convert(csvCompareType, csvCompareIndex);
				object o2 = e2.Convert(csvCompareType, csvCompareIndex);

				return csvCompareMethod(o1, o2) * (csvCompareReverse ? -1 : 1);
			}
			else
			{
				IComparable o1 = (IComparable)e1.Convert(csvCompareType, csvCompareIndex);
				IComparable o2 = (IComparable)e2.Convert(csvCompareType, csvCompareIndex);

				return o1.CompareTo(o2) * (csvCompareReverse ? -1 : 1);
			}
		}
Example #7
0
		public void Add(CsvEntry e)
		{
			entryList.Add(e);
		}
Example #8
0
		void init(Buf data, Encoding encoding)
		{
			if (encoding == null)
			{
				encoding = defaultEncoding;
			}

			int bomSize = 0;
			Encoding enc2 = null;
			if (data != null)
			{
				enc2 = Str.CheckBOM(data.ByteData, out bomSize);
			}
			if (bomSize >= 1)
			{
				data = new Buf(Util.RemoveStartByteArray(data.ByteData, bomSize));
			}
			if (enc2 != null)
			{
				encoding = enc2;
			}
			this.encoding = encoding;

			entryList = new List<CsvEntry>();

			if (data != null)
			{
				MemoryStream ms = new MemoryStream(data.ByteData);
				StreamReader sr = new StreamReader(ms, this.encoding);

				while (true)
				{
					string s = sr.ReadLine();

					if (s == null)
					{
						break;
					}

					char[] sep = { ',' };
					string[] strings = s.Trim().Split(sep, StringSplitOptions.None);

					CsvEntry e = new CsvEntry(strings);
					Add(e);
				}
			}
		}