Преобразование excel в текстовый формат с помощью разделителей
Привет
Мне нужно преобразовать Excel в текстовый формат с помощью разделителей.
Я кодировал с помощью Interop. Но для этого нужно всего 254 колонки. Я использую формат Excel 2007 года.
У меня есть 400 столбцов в Excel. Oledb занимает всего 254 столбца при чтении Excel
Пожалуйста, кто-нибудь помогите мне, как конвертировать Excel в текст
Что я уже пробовал:
tring excelConnStr = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + fileName + ";Extended Properties='Excel 12.0;HDR=No;IMEX=1;';"; OleDbConnection excelConn = new OleDbConnection(excelConnStr); excelConn.Open(); DataTable dbSchema = excelConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); string strsheetName = "Sheet1$"; if (dbSchema != null && dbSchema.Rows.Count > 0) { strsheetName = Convert.ToString(dbSchema.Rows[0]["TABLE_NAME"]); } System.Data.DataTable dtPatterns = new System.Data.DataTable(); excelCommand = new OleDbComnd("SELECT * FROM [" + strsheetName + " ]", excelConn); excelDataAdapter.Fill(dtPatterns); List<string> xcelData = new List<string>(); List<string> ColumnNames = new List<string>(); ds.Tables.Add(dtPatterns); totalRowsCount = dtPatterns.Rows.Count; totalColumnsCount = dtPatterns.Columns.Count; this.lblRowsCount.Invoke((MethodInvoker)delegate { this.lblRowsCount.Text = totalRowsCount.ToString(); }); for (int c = 0; c < dtPatterns.Columns.Count; c++) { if (c == dtPatterns.Columns.Count - 1) { SB1.Append(cValue.ToString() + dtPatterns.Columns[c].ToString() + cValue.ToString()); } else { SB1.Append(cValue.ToString() + dtPatterns.Columns[c].ToString() + cValue.ToString() + sValue.ToString()); } } SB1.Append("\r\n"); for (int d = 0; d < dtPatterns.Rows.Count; d++) { this.toolStripStatusLabel1.Text = string.Format("Processing Please Wait ...{0} of {1}", (count + 1), totalRowsCount); for (int c = 0; c < dtPatterns.Columns.Count; c++) { int g = dtPatterns.Columns.Count - 1; if (c == g) { SB1.Append(cValue.ToString() + dtPatterns.Rows[d][c].ToString() + cValue.ToString()); } else { SB1.Append(cValue.ToString() + dtPatterns.Rows[d][c].ToString() + cValue.ToString() + sValue.ToString()); } } SB1.Append("\r\n"); count++; }