从Excel表格中读取数据

我有一个名为“testing”的D盘中的Excel表(MS Excel 2010)。 我有它的数据如下

Id URL 1 http://www.sample.com/term=100898731%5Buid%5D&cmd=DetailsSearch&report=xml&format=text 2 http://www.sample.com/term==101120693%5Buid%5D&cmd=DetailsSearch&report=xml&format=text 3 http://www.sample.com/term==100893225%5Buid%5D&cmd=DetailsSearch&report=xml&format=text ...........continues ............ 

如何在C#中进行编码,从Excel表中逐一读取这些URL,并在“term =”之后获取数值?

尝试这个

  System.Data.OleDb.OleDbConnection mCon; mCon = new System.Data.OleDb.OleDbConnection(); mCon.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0;data source=" + pathOfFile + ";Extended Properties=\"Excel 12.0;HDR=YES\";"); System.Data.OleDb.OleDbCommand Command = new System.Data.OleDb.OleDbCommand(); DataTable DTable = new DataTable(); string strSelectQuery, mstrDBTable; System.Data.OleDb.OleDbDataAdapter DataAdapter = new System.Data.OleDb.OleDbDataAdapter(); strSelectQuery = "SELECT * FROM [" + YourSheetName + "]"; // YourSheetName is the sheet in xls from where you want to load data eg Sheet1$ if (mCon.State == ConnectionState.Closed) { mCon.Open(); } DataAdapter = new System.Data.OleDb.OleDbDataAdapter(strSelectQuery, mCon); DataAdapter.Fill(DTable ); mCon.Close(); 

现在您的Excel工作表在数据表中,您可以遍历来处理URL中的string值

编辑

获取String

 for(int i = 0; i<Dtable.Rows.Count;i++) { string str = Dtable.Rows[i][1].ToString(); string YourNumber = str.Substring((str.IndexOf('=') + 1), (str.IndexOf('%') - str.IndexOf('=')-1)); } 

尝试这个

 string fileName = "Activity.xls"; savePath += fileName; OleDbConnection conn= new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath(savePath) + ";Extended Properties='Excel 12.0;HDR=YES'"); if (conn.State == ConnectionState.Closed) conn.Open(); string query = "select * from [Sheet1$]"; OleDbDataAdapter da = new OleDbDataAdapter(query, conn); DataSet ds = new DataSet(); da.Fill(ds, "Activities"); dt = ds.Tables[0]; conn.Close();