का उपयोग कर सीएसवी पढ़ने के दौरान पहली पंक्ति को कैसे छोड़ें मेरे पास सीएसवी फ़ाइल से मूल्यों को पढ़ने और कुछ प्रोसेसिंग करने के लिए मेरा निम्नलिखित कोड है। मैं इनपुट सीएसवी फ़ाइल की पहली पंक्ति को छोड़ना चाहता हूं क्योंकि इसमें हेडर टेक्स्ट है लेकिन प्रसंस्करण के बाद मैं इसे वापस जोड़ना चाहता हूं।स्ट्रीमreader
List<string> values = new List<string>();
using (StreamReader sr = new StreamReader(filePath))
{
while (sr.Peek() != -1)
{
string line = sr.ReadLine();
List<string> lineValues = line.Split(',').ToList();
var tempMinInt = 1;
var tempValue = 1;
var tempValInt = Convert.ToInt32(lineValues[4]);
if (lineValues[3] == "1876")
{
if (tempValInt % 60 != 0)
{
tempMinInt = (tempValInt/60) + 1;
tempValue = tempMinInt * 30;
}
else
{
tempMinInt = tempValInt/60;
tempValue = tempMinInt * 30;
}
}
else if (lineValues[3] == "1875")
{
if (tempValInt != 0)
{
tempValue = 500;
}
else
tempValue = 0;
}
if (lineValues[3] == "1876")
{
values.Add(string.Join(",", lineValues) + "," + "0" + "," + "30" + "," + tempValue.ToString());
}
else if (lineValues[3] == "1875")
{
values.Add(string.Join(",", lineValues) + "," + "1" + "," + "500" + "," + tempValue.ToString());
}
}
}
नमूना इनपुट सीएसवी इस तरह दिखता है:
id, datetime, msisdn, num, duration
33083,2011-12-19 05:17:57+06:30,98590149,1875,258
33084,2011-12-19 05:22:28+06:30,98590149,1875,69
33085,2011-12-19 05:23:45+06:30,98590149,1875,151
33086,2011-12-19 05:30:21+06:30,98590149,1875,58
33087,2011-12-19 06:44:19+06:30,949826259,1875,66
और मैं करने के लिए इस तरह मेरी उत्पादन करना चाहते हैं: इससे पहले कि आप पाश में मिल
id, datetime, msisdn, num, duration, type, ammount, total
33083,2011-12-19 05:17:57+06:30,98590149,1875,258,1,500,500
33084,2011-12-19 05:22:28+06:30,98590149,1875,69,1,500,500
33085,2011-12-19 05:23:45+06:30,98590149,1875,151,1,500,500
33086,2011-12-19 05:30:21+06:30,98590149,1875,58,1,500,500