Burada excell dosyalarını düzenlemek için ExcelLibrary kullanmak için birçok öneri buldum, ancak herhangi bir yerde herhangi bir belge bulamıyorum.Excellibrary belgeleri
http://code.google.com/p/excellibrary/
Burada excell dosyalarını düzenlemek için ExcelLibrary kullanmak için birçok öneri buldum, ancak herhangi bir yerde herhangi bir belge bulamıyorum.Excellibrary belgeleri
http://code.google.com/p/excellibrary/
bu deneyin:
var workbook = Workbook.Load("spreadsheet.xls");
var worksheet = workbook.Worksheets[0]; // assuming only 1 worksheet
var cells = worksheet.Cells;
var dataTable = new DataTable("datatable");
// add columns
dataTable.Columns.Add("column1");
dataTable.Columns.Add("column2");
...
// add rows
for (int rowIndex = cells.FirstRowIndex + 1; rowIndex <= cells.LastRowIndex; rowIndex++)
{
var values = new List<string>();
foreach(var cell in cells.GetRow(rowIndex))
{
values.Add(cell.Value.StringValue);
}
dataTable.LoadDataRow(values.ToArray(), true);
}
O tam olarak güzel kod ama bir DataTable
döndürür oluyor. Mümkünse değerleri doğrudan kullanmanız önerilir. DataTable
'a dönüştürmek yerine değerleri doğrudan okuyun ve bu dönüştürme adımını atlayın.
Teşekkürler Lester. Tek sorun, ilk satır başlık değil. İhtiyacım yok. Ne yapabilirim ki ilk satır başlık değil, bu yüzden varsayılan (Sütun1, Sütun2, vb.). Teşekkürler. –
Kodu güncelledim. Sadece gerektiğinde sütun sayısını manuel olarak eklemeniz gerekir. 1 tane daha iyi yapabilir ve sadece bir döngüye sokabilirsiniz ama şu anda test edemiyorum. – Lester
bunun ne olduğundan emin değilim ama Microsoft Office belgelerini manipüle tercih edilen yöntem Open XML SDK 2.0 kullanmak olduğunu düşünüyorum.
Bu soru ve cevapları gerçekten eskidir. Şu anda buna bakan herkes - ExcelLibrary'i unutun. NPOI şimdi gitmek yoludur ve her iki .xls için iyi çalışıyor ve
.xlsx - bu Java sürümü olmasına rağmen buldum iyi belgelerine - C# indirmeleri//create new xls file
string file = "C:\newdoc.xls";
Workbook workbook = new Workbook();
Worksheet worksheet = new Worksheet("First Sheet");
worksheet.Cells[0, 1] = new Cell((short)1);
worksheet.Cells[2, 0] = new Cell(9999999);
worksheet.Cells[3, 3] = new Cell((decimal)3.45);
worksheet.Cells[2, 2] = new Cell("Text string");
worksheet.Cells[2, 4] = new Cell("Second string");
worksheet.Cells[4, 0] = new Cell(32764.5, "#,##0.00");
worksheet.Cells[5, 1] = new Cell(DateTime.Now, @"YYYY-MM-DD"); worksheet.Cells.ColumnWidth[0, 1] = 3000;
workbook.Worksheets.Add(worksheet); workbook.Save(file);
// open xls file
Workbook book = Workbook.Load(file);
Worksheet sheet = book.Worksheets[0];
// traverse cells
foreach (Pair, Cell> cell in sheet.Cells)
{
dgvCells[cell.Left.Right, cell.Left.Left].Value = cell.Right.Value;
}
// traverse rows by Index
for (int rowIndex = sheet.Cells.FirstRowIndex; rowIndex <= sheet.Cells.LastRowIndex; rowIndex++)
{
Row row = sheet.Cells.GetRow(rowIndex);
for (int colIndex = row.FirstColIndex; colIndex <= row.LastColIndex; colIndex++)
{
Cell cell = row.GetCell(colIndex);
}
}
Lütfen daha fazla açıklama verin, thx –
ExcelLibrary.dll dosyasında autoFit hücresi nasıl? –
Yapmaya çalıştığınız belirli bir şey var mı? ExcelLibrary kullandım ve anlaması kolay anı buldu. – Lester
Excel dosyasını C# datatable'a dönüştürmeye çalışıyorum ve sintax'ı bilmiyorum. Her zaman tam belgelere sahip olmayı severim ve bunların hiçbirini burada bulamıyorum. –
Kütüphaneleri seçmeye hala devam edenler için: Daha iyi (ve daha iyi belgelenmiş) bir proje var: http://epplus.codeplex.com/ – Laoujin