2012-09-23 53 views
-3

我是vb.net中的新手,我想將txt文件轉換爲csv。我已經TXT文件是這樣的:VB.net txt到csv

Name 
A 
Class 
10 
Roll No 
123 
Name 
B 
Class 
9 
Roll No 
23 
Name 
C 
Class 
7 
Roll No 
3 

如何CSV文件導出這樣

A,10,123 
B,9,23 
c,7,3 

回答

1

你的數據不是結構良好。如果它是XML,那將很好。試試這個代碼

static void Main(string[] args) 
{ 
    StreamReader reader = new StreamReader(filename); 
    StringBuilder csv = new StringBuilder(); 
    using (reader) 
    { 
    string line = ""; 
    while (!reader.EndOfStream) 
    { 
     reader.ReadLine(); //Skip the name line 
     string name = reader.ReadLine(); 
     reader.ReadLine(); //Skip the class line 
     string cls = reader.ReadLine(); 
     reader.ReadLine(); //skip the rollup line 
     string rollno = reader.ReadLine(); 

     csv.AppendLine(String.Join(",", new string[] { name, cls, rollno })); 
    } 
    } 
    Console.WriteLine(csv.ToString()); 

    Console.ReadLine(); 
} 

OUPUT

A,10,123 
B,9,23 
C,7,3 
+0

非常感謝你的概念。這個概念對我來說工作得很好。想知道爲什麼我得到-3這個問題:) –

1

試試這個

SearchString = Replace(SearchString, Chr(13), ",")