خواندن اطلاعات از فایل اکسل با استفاده از LinqToExcel
نویسنده: مسعود حق شناس
تاریخ: ۱۳۹۲/۰۸/۰۶ ۲۲:۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
PM> Install-Package LinqToExcel
string pathToExcelFile = @"C:\Users\MASOUD\Desktop\ExcelFile.xlsx";
var excel = new ExcelQueryFactory(pathToExcelFile);
string sheetName = "Sheet1";
var persons = from a in excel.Worksheet(sheetName) select a;
foreach (var a in persons)
{
MessageBox.Show(a["Name"]+" "+a["Family"]);
} public class Person
{
public string Name { get; set; }
public string Family { get; set; }
} string pathToExcelFile = @"C:\Users\MASOUD\Desktop\ExcelFile.xlsx";
var excel = new ExcelQueryFactory(pathToExcelFile);
string sheetName = "Sheet1";
var persons = from a in excel.Worksheet<Person>(sheetName) select a;
foreach (var a in persons)
{
MessageBox.Show(a.Name+" "+a.Family);
} string pathToExcelFile = @"C:\Users\MASOUD\Desktop\ExcelFile.xlsx";
var excel = new ExcelQueryFactory(pathToExcelFile);
string sheetName = "Sheet1";
excel.AddMapping("Name","نام");
excel.AddMapping("Family", "نام خانوادگی");
var persons = from a in excel.Worksheet<Person>(sheetName) select a;
foreach (var a in persons)
{
MessageBox.Show(a.Name+" "+a.Family);
} var persons = from a in excel.Worksheet<Person>() select a;
var persons = from a in excel.Worksheet<Person>(0) select a;
public IEnumerable<string> getWorkSheets()
{
string pathToExcelFile = @"C:\Users\MASOUD\Desktop\ExcelFile.xlsx";
var excel = new ExcelQueryFactory(pathToExcelFile);
return excel.GetWorksheetNames();
} var SheetColumnNames = excel.GetColumnNames(sheetName);
var excel = new ExcelQueryFactory(pathToExcelFile);
string sheetName = "Sheet1";
var persons = from a in excel.WorksheetNoHeader(sheetName)
where a[1] == "Mashhad" //مقدار در ستون دوم
select a;
foreach (var a in persons)
{
for(int i=0;i<a.Count;i++)
MessageBox.Show(a[i]);
} The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=path to xls/xlsx/xlsm/xlsb file
using System;
using System.IO;
using OfficeOpenXml;
namespace ExcelDataReader
{
class Program
{
/// <summary>
/// PM> Install-Package EPPlus
/// </summary>
static void Main(string[] args)
{
var filePath = "sample.xlsx";
var fileInfo = new FileInfo(filePath);
if (!fileInfo.Exists)
{
throw new FileNotFoundException($"{filePath} file not found.");
}
var worksheetName = "Sheet1";
using (var package = new ExcelPackage(fileInfo))
{
var worksheet = package.Workbook.Worksheets[worksheetName];
var startCell = worksheet.Dimension.Start;
var endCell = worksheet.Dimension.End;
for (var row = startCell.Row; row < endCell.Row + 1; row++)
{
for (var col = startCell.Column; col <= endCell.Column; col++)
{
var header = worksheet.Cells[1, col].Value ?? worksheet.Cells[2, col].Value;
var name = header?.ToString();
var value = worksheet.Cells[row, col].Value;
//var intValue = Convert.ChangeType(value, typeof(int)) as int?;
Console.WriteLine($" row[{row}]:col[{col}] -> {name} : {value}");
}
Console.WriteLine();
}
}
}
}
} var intValue = Convert.ChangeType(value, typeof(int)) as int?;