1 string s = string.Empty;
2 string src = string.Empty;
3 SortedList sl = new SortedList();
4 StreamReader fs = new StreamReader(new FileStream("demo.csv", FileMode.Open, FileAccess.Read), Encoding.GetEncoding("gb2312"));
5 while (!string.IsNullOrEmpty(s = fs.ReadLine()))
6 {
7 if (!string.IsNullOrEmpty(s))
8 {
9 Console.WriteLine(s);
10 src = s.Replace("""", "'");
11 MatchCollection col = Regex.Matches(src, ","([^"]+)",", RegexOptions.ExplicitCapture);
12 IEnumerator ie = col.GetEnumerator();
13 while (ie.MoveNext())
14 {
15 string patn = ie.Current.ToString();
16 int key = src.Substring(0, src.IndexOf(patn)).Split(',').Length;
17 if (!sl.ContainsKey(key))
18 {
19 sl.Add(key, patn.Trim(new char[] { ',', '"' }).Replace("'", """));
20 src = src.Replace(patn, ",,");
21 }
22 }
23
24 string[] arr = src.Split(',');
25 for (int i = 0; i < arr.Length; i++)
26 {
27 if (!sl.ContainsKey(i))
28 sl.Add(i, arr[i]);
29 }
30
31 IDictionaryEnumerator ienum = sl.GetEnumerator();
32 while (ienum.MoveNext())
33 {
34 Console.WriteLine(string.Format("{0}:{1}", ienum.Key, ienum.Value.ToString().Replace("'", """)));
35 }
36 sl.Clear();
37 src = string.Empty;
38 }
39 Console.Read();
40 }
41 fs.Close();
读取csv文件
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...