/// <summary>
/// CSVToJSON
/// </summary>
/// <param name="filePath">CSV文件路徑</param>
public void CsvToJson(string filePath)
{
JObject sta = new JObject(); //新建一個JObject對象
sta.Add(new JProperty("starttime", "20180101"));
JArray arr = new JArray(); //新建一個JArray對象
Dictionary<string, int> lstTrueField = new Dictionary<string, int>(); //新建鍵值對對象
StreamReader reader = new StreamReader(filePath, System.Text.Encoding.Default, false); //讀取CSV文件
int m = 0;
while (!reader.EndOfStream)
{
m = m + 1;
string str = reader.ReadLine();
string[] split = str.Split(',');
if (m == 1) //第一行作為列名
{
for (int c = 3; c < split.Length; c++)
{
lstTrueField.Add(split[c], c); //課程與列序號
}
}
if (m > 1)
{
arr.Add(new JObject(new JProperty("Name", split[0]), new JProperty("Age", split[1]),new JProperty("Sex",split[2]),new JProperty("course", newJArray(new JObject(from p in lstTrueField select new JProperty(p.Key,split[p.Value]))))));
}
}
reader.Close(); //關閉流
sta.Add(new JProperty("locdata", arr)); //將JArray數組加入JObject對象內。
}