比如txt数据如下:
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
...将上面的数据 导入一个excel表格里。 用VC做个程序实现。 怎么做哦,求思路
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
123456,ABCDE,FGHI-2345
...将上面的数据 导入一个excel表格里。 用VC做个程序实现。 怎么做哦,求思路
{
CDatabase database;
CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; // Excel安装驱动
CString sExcelFile,sPath;
CString sSql;
CFile sf;
if(sf.Open(file,CFile::modeRead))
{
sf.Close();
DeleteFile(file);
} try
{
// 创建进行存取的字符串
sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",sDriver, file, file); // 创建数据库 (既Excel表格文件)
if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
{
// 创建表结构(姓名、年龄)
sSql = "CREATE TABLE SX_Info (列1 TEXT,列2 TEXT,列3 TEXT)";
database.ExecuteSQL(sSql);
int i,j;
CString s[16],strLine;
char dd[3][100];
char data[]="123456,ABCDE,FGHI-2345";
// for(i=0;i<n;i++)
{
sscanf(data,"%s,%s,%s",dd[0],dd[1],dd[2]);
strLine.Format("'%s','%s','%s',",
dd[0],dd[1],dd[2]);
sSql="INSERT INTO SX_Info (列1,列2 ,列3 ) VALUES ("+strLine+")";
//AfxMessageBox(sSql);
database.ExecuteSQL(sSql);
} } // 关闭数据库
database.Close(); AfxMessageBox("Excel文件写入成功!");
}
// CATCH_ALL(e)
catch(_com_error e)
{
TRACE1("Excel驱动没有安装: %s",sDriver);
}
// END_CATCH_ALL;
return TRUE;}