我需要将一些数据传递给文本文件,并将该文本文件保存在SQL Server 2005数据库中。
然后我需要能够将该文本文件加载到C#WinForms DataGrid中。
我如何在C#中做到这一点?
答案 0 :(得分:2)
为什么不将数据从SQL Server读入数据网格而不是从文本文件中读取?将数据从数据库加载到网格中应该很容易直接开箱即用。
答案 1 :(得分:1)
答案 2 :(得分:1)
从您的问题中不清楚数据的开始位置,或者您需要文本文件的原因。但是,我会回答你的一点。有很多方法可以读取文本文件。这就是我通常这样做的方式:
首先,写出一个带有架构的文件
using (StreamWriter sw = new StreamWriter(sPath + @"\schema.ini"))
{
sw.WriteLine("[" + sFile + "]");
sw.WriteLine("ColNameHeader=False");
sw.WriteLine("Format=FixedLength");
sw.WriteLine("Col1=CO_ID Text Width 2");
sw.WriteLine("Col2=AGENCY_CD Text Width 10");
// lines for additional columns here
sw.Close();
sw.Dispose();
}
然后使用ODCB将数据读取到DataSet。
string cs = @"Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=" + sPath;
OdbcConnection cn = new OdbcConnection(cs);
string q = @"select * from [" + sNewFN + "]";
OdbcDataAdapter da = new OdbcDataAdapter(q, cn);
da.Fill(ds, "MyTable");
表ds.Tables [“MyTable”]是DataGrid的DataSource
此处有关于此方法的信息:
http://msdn.microsoft.com/en-us/library/ms714091%28v=VS.85%29.aspx