将csv导入datagrid,添加列数据 [英] importing csv to datagrid, adding column data
问题描述
我可以导入一个没有问题的csv文件。我还可以在导入时将列添加到
数据网格中。我希望能够在第3行开始导入
行。这将获取数据网格所需的标头。一旦我能够达到这一点,我需要一些方法才能将新数据添加到已添加的新列中。
> >
以下是我的一些代码:
//从CSV文件导入数据的功能
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
/ /您可以使用DSN或
连接字符串连接到驱动程序
//如果要使用DSN,请创建如下连接字符串
少连接。 DBQ属性设置目录的路径
包含CSV文件
string strConnString =" Driver = {Microsoft Text Driver(* .txt;
* .csv)}; Dbq =" + txtCSVFolderPath.Text.Trim()+" ;; Exten sions = asc,csv,tab,txt; Persist
安全信息= False" ;;
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//创建与CSV的连接文件
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim());
//使用DSN创建连接时,请使用以下命令line
// conn = new System.Data.Odbc.OdbcConnection(DSN =" MyDSN");
//打开连接>
conn.Open();
//从CSV中获取记录
sql_select =" select * from [" + filetable +"]" ;;
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//填充数据集来自的记录CSV文件
obj_oledb_da.Fill(ds," Stocks");
ds.Tables [" Stocks"]。Columns.Add(" Name");
ds.Tables [" Stocks"]。Columns.Add(" Description");
ds.Tables [" Stocks"]。 Columns.Add(" CUSIP");
ds.Tables [" Stocks"]。Columns.Add(" SEDOL1");
ds.Tables [ " Stocks" ..Columns.Add(" ISIN");
//设置数据网格属性
dGridCSVdata.DataSource = ds;
dGridCSVdata.DataMember =" Stocks";
//关闭与CSV文件的连接
conn.Close( );
}
catch(例外e)//错误
{
MessageBox.Show(e。消息);
}
返回ds;
}
JMO,
您是否更容易导入所有内容然后删除前三行
行?
-
问候,
Robson Siqueira
企业架构师
" JMO" < j。********** @ gmail.com写信息
新闻:11 ******************* ***@38g2000cwa.googlegro ups.com ...
>我可以导入一个没有问题的csv文件。我还可以在导入时将列添加到
数据网格中。我希望能够在第3行开始导入
行。这将获取数据网格所需的标头。一旦我能够达到这一点,我需要一些方法才能将新数据添加到已添加的新列中。
> >
以下是我的一些代码:
//从CSV文件导入数据的功能
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
/ /您可以使用DSN或
连接字符串连接到驱动程序
//如果要使用DSN,请创建如下连接字符串
少连接。 DBQ属性设置目录的路径
包含CSV文件
string strConnString =" Driver = {Microsoft Text Driver(* .txt;
* .csv)}; Dbq =" + txtCSVFolderPath.Text.Trim()+" ;; Exten sions = asc,csv,tab,txt; Persist
安全信息= False" ;;
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//创建与CSV的连接文件
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim());
//使用DSN创建连接时,请使用以下命令line
// conn = new System.Data.Odbc.OdbcConnection(DSN =" MyDSN");
//打开连接>
conn.Open();
//从CSV中获取记录
sql_select =" select * from [" + filetable +"]" ;;
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//填充数据集随着来自CSV文件的记录
obj_oledb_da.Fill(ds," Stocks");
ds.Tables [" Stocks"]。Columns.Add(" Name" );
ds.Tables [" Stocks"]。Columns.Add(" Description");
ds.Tables [" Stocks" ] .Columns.Add(" CUSIP");
ds.Tables [" Stocks"]。Columns.Add(" SEDOL1");
ds。表格[" Stocks]]。Columns.Add(" ISIN");
//设置数据网格属性
dGridCSVdata。 DataSource = ds;
dGridCSVdata.DataMember =" Stocks";
//关闭与CSV文件的连接
conn。关闭();
}
catch(例外e)//错误
{
MessageBox.Show( e.Message);
}
返回ds;
}
Robson,
我该怎么办?
JMO
Robson Siqueira写道:
JMO,
你是不是更容易导入所有内容然后删除前三行
行?
-
问候,
Robson Siqueira
企业架构师
" JMO" < j。********** @ gmail.com写信息
新闻:11 ******************* ***@38g2000cwa.googlegro ups.com ...
我可以导入一个没有问题的csv文件。我还可以在导入时将列添加到
数据网格中。我希望能够在第3行开始导入
行。这将获取数据网格所需的标头。一旦我能够达到这一点,我需要一些方法才能将新数据添加到已添加的新列中。
> >
以下是我的一些代码:
//从CSV文件导入数据的功能
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
/ /您可以使用DSN或
连接字符串连接到驱动程序
//如果要使用DSN,请创建如下连接字符串
少连接。 DBQ属性设置目录的路径
包含CSV文件
string strConnString =" Driver = {Microsoft Text Driver(* .txt;
* .csv)}; Dbq =" + txtCSVFolderPath.Text.Trim()+" ;; Exten sions = asc,csv,tab,txt; Persist
安全信息= False" ;;
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//创建与CSV的连接文件
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim());
//使用DSN创建连接时,请使用以下命令line
// conn = new System.Data.Odbc.OdbcConnection(DSN =" MyDSN");
//打开连接>
conn.Open();
//从CSV中获取记录
sql_select =" select * from [" + filetable +"]" ;;
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//使用CSV文件中的记录填充数据集
obj_oledb_da.Fill(ds," Stocks");
ds.Tables [" Stocks"]。Columns.Add( 姓名;
ds.Tables [" Stocks"]。Columns.Add(" Description");
ds.Tables [ " Stocks" ..Columns.Add(" CUSIP");
ds.Tables [" Stocks"]。Columns.Add(" SEDOL1");
ds.Tables [" Stocks"]。Columns.Add(" ISIN");
//设置数据网格属性
dGridCSVdata.DataSource = ds;
dGridCSVdata.DataMember =" Stocks";
//关闭与CSV文件的连接
conn.Close();
}
catch(例外e)//错误
{
MessageBox.Show(e.Message);
}
返回ds;
}
我该怎么办?
JMO
Robson Siqueira写道:
JMO,
你不是更容易导入所有东西然后删除前三个
行?
-
问候,
Robson Siqueira
企业建筑师
JMO < j。********** @ gmail.com写信息
新闻:11 ******************* ***@38g2000cwa.googlegro ups.com ...
我可以导入一个没有问题的csv文件。我还可以在导入时将列添加到
数据网格中。我希望能够在第3行开始导入
行。这将获取数据网格所需的标头。一旦我能够达到这一点,我需要一些方法才能将新数据添加到已添加的新列中。
> >
以下是我的一些代码:
//从CSV文件导入数据的功能
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
/ /您可以使用DSN或
连接字符串连接到驱动程序
//如果要使用DSN,请创建如下连接字符串
少连接。 DBQ属性设置目录的路径
包含CSV文件
string strConnString =" Driver = {Microsoft Text Driver(* .txt;
* .csv)}; Dbq =" + txtCSVFolderPath.Text.Trim()+" ;; Exten sions = asc,csv,tab,txt; Persist
安全信息= False" ;;
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//创建与CSV的连接文件
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim());
//使用DSN创建连接时,请使用以下命令line
// conn = new System.Data.Odbc.OdbcConnection(DSN =" MyDSN");
//打开连接>
conn.Open();
//从CSV中获取记录
sql_select =" select * from [" + filetable +"]" ;;
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//使用CSV文件中的记录填充数据集
obj_oledb_da.Fill(ds," Stocks");
ds.Tables [" Stocks"]。Columns.Add( 姓名;
ds.Tables [" Stocks"]。Columns.Add(" Description");
ds.Tables [ " Stocks" ..Columns.Add(" CUSIP");
ds.Tables [" Stocks"]。Columns.Add(" SEDOL1");
ds.Tables [" Stocks"]。Columns.Add(" ISIN");
//设置数据网格属性
dGridCSVdata.DataSource = ds;
dGridCSVdata.DataMember =" Stocks";
//关闭与CSV文件的连接
conn.Close();
}
catch(例外e)//错误
{
MessageBox.Show(e.Message);
}
返回ds;
}
I can import a csv file with no problem. I can also add columns to the
datagrid upon import. I want to be able to start importing at the 3rd
row. This will pick up the headers necessary for the datagrid. Once I
can get to that point I need some way to be able to add new data only
to the new columns that were added.
Here is some of my code:
//Function For Importing Data From CSV File
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
// You can get connected to driver either by using DSN or
connection string
// Create a connection string as below, if you want to use DSN
less connection. The DBQ attribute sets the path of directory which
contains CSV files
string strConnString="Driver={Microsoft Text Driver (*.txt;
*.csv)};Dbq="+txtCSVFolderPath.Text.Trim()+";Exten sions=asc,csv,tab,txt;Persist
Security Info=False";
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//Create connection to CSV file
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim ());
// For creating a connection using DSN, use following line
//conn = new System.Data.Odbc.OdbcConnection(DSN="MyDSN");
//Open the connection
conn.Open();
//Fetch records from CSV
sql_select = "select * from ["+ filetable +"]";
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//Fill dataset with the records from CSV file
obj_oledb_da.Fill(ds,"Stocks");
ds.Tables["Stocks"].Columns.Add("Name");
ds.Tables["Stocks"].Columns.Add("Description");
ds.Tables["Stocks"].Columns.Add("CUSIP");
ds.Tables["Stocks"].Columns.Add("SEDOL1");
ds.Tables["Stocks"].Columns.Add("ISIN");
//Set the datagrid properties
dGridCSVdata.DataSource=ds;
dGridCSVdata.DataMember="Stocks";
//Close Connection to CSV file
conn.Close();
}
catch(Exception e) //Error
{
MessageBox.Show(e.Message);
}
return ds;
}
JMO,
Isn''t easier for you to import everything and then remove the 1st three
rows?
--
Regards,
Robson Siqueira
Enterprise Architect
"JMO" <j.**********@gmail.comwrote in message
news:11**********************@38g2000cwa.googlegro ups.com...>I can import a csv file with no problem. I can also add columns to the
datagrid upon import. I want to be able to start importing at the 3rd
row. This will pick up the headers necessary for the datagrid. Once I
can get to that point I need some way to be able to add new data only
to the new columns that were added.
Here is some of my code:
//Function For Importing Data From CSV File
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
// You can get connected to driver either by using DSN or
connection string
// Create a connection string as below, if you want to use DSN
less connection. The DBQ attribute sets the path of directory which
contains CSV files
string strConnString="Driver={Microsoft Text Driver (*.txt;
*.csv)};Dbq="+txtCSVFolderPath.Text.Trim()+";Exten sions=asc,csv,tab,txt;Persist
Security Info=False";
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//Create connection to CSV file
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim ());
// For creating a connection using DSN, use following line
//conn = new System.Data.Odbc.OdbcConnection(DSN="MyDSN");
//Open the connection
conn.Open();
//Fetch records from CSV
sql_select = "select * from ["+ filetable +"]";
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//Fill dataset with the records from CSV file
obj_oledb_da.Fill(ds,"Stocks");
ds.Tables["Stocks"].Columns.Add("Name");
ds.Tables["Stocks"].Columns.Add("Description");
ds.Tables["Stocks"].Columns.Add("CUSIP");
ds.Tables["Stocks"].Columns.Add("SEDOL1");
ds.Tables["Stocks"].Columns.Add("ISIN");
//Set the datagrid properties
dGridCSVdata.DataSource=ds;
dGridCSVdata.DataMember="Stocks";
//Close Connection to CSV file
conn.Close();
}
catch(Exception e) //Error
{
MessageBox.Show(e.Message);
}
return ds;
}
Robson,
How would I do that?
JMO
Robson Siqueira wrote:JMO,
Isn''t easier for you to import everything and then remove the 1st three
rows?
--
Regards,
Robson Siqueira
Enterprise Architect
"JMO" <j.**********@gmail.comwrote in message
news:11**********************@38g2000cwa.googlegro ups.com...I can import a csv file with no problem. I can also add columns to the
datagrid upon import. I want to be able to start importing at the 3rd
row. This will pick up the headers necessary for the datagrid. Once I
can get to that point I need some way to be able to add new data only
to the new columns that were added.
Here is some of my code:
//Function For Importing Data From CSV File
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
// You can get connected to driver either by using DSN or
connection string
// Create a connection string as below, if you want to use DSN
less connection. The DBQ attribute sets the path of directory which
contains CSV files
string strConnString="Driver={Microsoft Text Driver (*.txt;
*.csv)};Dbq="+txtCSVFolderPath.Text.Trim()+";Exten sions=asc,csv,tab,txt;Persist
Security Info=False";
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//Create connection to CSV file
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim ());
// For creating a connection using DSN, use following line
//conn = new System.Data.Odbc.OdbcConnection(DSN="MyDSN");
//Open the connection
conn.Open();
//Fetch records from CSV
sql_select = "select * from ["+ filetable +"]";
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//Fill dataset with the records from CSV file
obj_oledb_da.Fill(ds,"Stocks");
ds.Tables["Stocks"].Columns.Add("Name");
ds.Tables["Stocks"].Columns.Add("Description");
ds.Tables["Stocks"].Columns.Add("CUSIP");
ds.Tables["Stocks"].Columns.Add("SEDOL1");
ds.Tables["Stocks"].Columns.Add("ISIN");
//Set the datagrid properties
dGridCSVdata.DataSource=ds;
dGridCSVdata.DataMember="Stocks";
//Close Connection to CSV file
conn.Close();
}
catch(Exception e) //Error
{
MessageBox.Show(e.Message);
}
return ds;
}
Robson,
How would I do that?
JMO
Robson Siqueira wrote:JMO,
Isn''t easier for you to import everything and then remove the 1st three
rows?
--
Regards,
Robson Siqueira
Enterprise Architect
"JMO" <j.**********@gmail.comwrote in message
news:11**********************@38g2000cwa.googlegro ups.com...I can import a csv file with no problem. I can also add columns to the
datagrid upon import. I want to be able to start importing at the 3rd
row. This will pick up the headers necessary for the datagrid. Once I
can get to that point I need some way to be able to add new data only
to the new columns that were added.
Here is some of my code:
//Function For Importing Data From CSV File
public DataSet ConnectCSV(string filetable)
{
DataSet ds = new DataSet();
try
{
// You can get connected to driver either by using DSN or
connection string
// Create a connection string as below, if you want to use DSN
less connection. The DBQ attribute sets the path of directory which
contains CSV files
string strConnString="Driver={Microsoft Text Driver (*.txt;
*.csv)};Dbq="+txtCSVFolderPath.Text.Trim()+";Exten sions=asc,csv,tab,txt;Persist
Security Info=False";
string sql_select;
System.Data.Odbc.OdbcConnection conn;
//Create connection to CSV file
conn = new System.Data.Odbc.OdbcConnection(strConnString.Trim ());
// For creating a connection using DSN, use following line
//conn = new System.Data.Odbc.OdbcConnection(DSN="MyDSN");
//Open the connection
conn.Open();
//Fetch records from CSV
sql_select = "select * from ["+ filetable +"]";
obj_oledb_da = new
System.Data.Odbc.OdbcDataAdapter(sql_select,conn);
//Fill dataset with the records from CSV file
obj_oledb_da.Fill(ds,"Stocks");
ds.Tables["Stocks"].Columns.Add("Name");
ds.Tables["Stocks"].Columns.Add("Description");
ds.Tables["Stocks"].Columns.Add("CUSIP");
ds.Tables["Stocks"].Columns.Add("SEDOL1");
ds.Tables["Stocks"].Columns.Add("ISIN");
//Set the datagrid properties
dGridCSVdata.DataSource=ds;
dGridCSVdata.DataMember="Stocks";
//Close Connection to CSV file
conn.Close();
}
catch(Exception e) //Error
{
MessageBox.Show(e.Message);
}
return ds;
}
这篇关于将csv导入datagrid,添加列数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!