도와주세요!CSV를 Gridview로 가져 오기
데이터베이스에 데이터를 저장하기 전에 CSV (Csv)에서 데이터를 그리드로 가져 오려고합니다 ... 문제는 내가 시도한 것이 든 상관없이 그 라인이 가비지 또는 일부 포맷을 읽지 못하는 것입니다. 알고있다. 이것은 내 asp.net Gridview로 가져 오려고하지만 처음에는 작동하지 않습니다. 만약 누군가가 나를 바른 길로 인도 해 주시면 감사하겠습니다!
이 내가 무슨 짓을했는지 있습니다 :
private object ReadToEnd(string filePath)
{
DataTable dtDataSource = new DataTable();
string[] fileContent = File.ReadAllLines(filePath);
if (fileContent.Count() > 0)
{
string[] columns = fileContent[0].Split(',');
for (int i = 0; i < columns.Count(); i++)
{
dtDataSource.Columns.Add(columns[i]);
}
for (int i = 1; i < fileContent.Count(); i++)
{
string[] rowData = fileContent[i].Split(',');
dtDataSource.Rows.Add(rowData);
}
}
gvTest.DataSource = dtDataSource;
gvTest.DataBind();
}
나는 단지 SerialNo입니다 전체 CSV에서 하나의 컬럼이 필요합니다.
데이터를 읽은 후 : 내가 올바른 정보를받은 후 나는
이
이 읽고 년대 무엇인가 ... 데이터베이스 (SQL)에 삽입하기 전에 데이터의 나머지 부분을 바인딩 "입력 배열이이 테이블의 열 수보다 깁니다."라는 오류 메시지가 나타납니다.![enter image description here][2]
그러나
이 방법에 내가 오류 및 그리드를받을 수 없습니다 : private static DataTable GetDataTabletFromCSVFile(string path)
{
DataTable csvData = new DataTable();
csvData.Columns.Add("SerialNo", typeof(string));
// csvData.Columns.Add("MachineDetailsRef", typeof(int));
try
{
using (TextFieldParser csvReader = new TextFieldParser(path))
{
csvReader.SetDelimiters(new string[] { "," });
csvReader.HasFieldsEnclosedInQuotes = true;
string[] colFields = csvReader.ReadFields();
foreach (string column in colFields)
{
DataColumn serialno = new DataColumn(column);
serialno.AllowDBNull = true;
csvData.Columns.Add(serialno);
}
while (!csvReader.EndOfData)
{
string[] fieldData = csvReader.ReadFields();
//Making empty value as null
for (int i = 0; i < fieldData.Length; i++)
{
if (fieldData[i] == "")
{
fieldData[i] = null;
}
}
csvData.Rows.Add(fieldData);
}
}
}
catch (Exception ex)
{
}
return csvData;
}
이 이전의 시도와 동일한 데이터를 제공합니다
나는이 다른 방법을하고 시도했습니다
것은 어떤 도움이 GREA 될 것입니다 :로 채워됩니다 감사합니다! 감사합니다
편집 -------------
이 내 CSV 파일입니다 :
입력 csv 파일을 표시하면 좋을 것입니다. 헤더를 포함하여 처음 2 ~ 3 라인? – Hassan
@HassanNisar, 감사합니다. csv가 어떻게 생겼는지 업로드했습니다. – Kerieks
csv 파일의 인코딩은 UTF-16입니까? –