![](/img/trans.png)
[英]Inserting data from an Excel Spreadsheet into Microsoft Access using C# not working for specific fields
[英]Working with data from an Excel spreadsheet in C#
我在具有10,000行的Excel電子表格中具有以下結構的數據:
Country | Region | City | Latitude | Longitude
-----------------------------------------------------
USA | CA | Los Angeles | 34°03′N | 118°15′W
...
前三列實際上構成了主鍵。 我想將此數據加載到C#程序中,這樣我就可以在概念上具有如下表達式:
string lat = someDataStructure["USA"]["CA"]["Los Angeles"].latitude;
我還希望能夠做一些事情,例如獲得加利福尼亞所有緯度城市的列表。
從Excel加載此數據的最佳方法是什么? 我會為此使用Linq嗎?
(我不能使用第三方庫/模塊來完成此任務。)
我建議使用ADO.net將數據從Excel工作表中提取到數據集中。
您可以在DataTable上進行過濾/排序,也可以使用LINQ。
您可以按照此處所述將excel數據加載到數據集中,然后可以使用如下代碼
string strExpr;
string strSort;
strExpr = "country = 'USA' AND Region = 'CA'";
strSort = "City DESC";
DataRow[] foundRows = ds.Table[0].Select(strExpr, strSort, DataViewRowState.Added);
或使用linq 2數據集
var query = from c in ds.Tables[0].AsEnumerable()
where c.Field<string>("Country") == "USA" &&
where c.Field<string>("State") == "CA"
select c;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.