MFC txt数据读取分割保存的问题
想实现的效果是将txt文本文件读出然后保存到数据库中,试过几个分割函数,都无法正确插入到数据库中,但是|Qt中确成功了,现在想问MFC改如何实现这个效果
while(!in.atEnd()) //将txt中的文件 插入到表thiness中 但是 txt 文件是什么时候建立的呢?
{
QString line = in.readLine();
QStringList fields = line.split("|");
query1.exec(tr("insert into thickness
values (%1,''%2'',''%3'')").arg(fields[0]).arg(fields[1]).arg(fields[2]));
}
file.close();


CString str;
str.Format(_T("./temp/Zn.txt"));
CStdioFile m_file(str, CFile::modeRead);
{
::AfxMessageBox(_T("文件打开失败。"));
return ;
}
CString contents;
while (m_file.ReadString(contents))
{
TCHAR seps[] = _T("|");
TCHAR* token = _tcstok((LPTSTR)(LPCTSTR)contents, seps);
while (token != NULL)
{
//不知道怎么分割和组合了、、、求教
}
}
m_file.Close();
C++技术网解答:
分割和组合的代码如下:
CStdioFile file;
if(!file.Open(_T("D:/1.txt"), CFile::modeRead))
{
MessageBox(_T("文件打开失败"));
return;
}
CString contents;
vector<vector<CString> > data_list;
vector<CString> row_list;
while (file.ReadString(contents))
{
TCHAR seps[] = _T("|");
row_list.clear();
TCHAR* token = _tcstok((LPTSTR)(LPCTSTR)contents, seps);
while (token != NULL)
{
row_list.push_back(token);
token = _tcstok(NULL, seps);
}
data_list.push_back(row_list);
}
file.Close();
运行效果图:
请微信扫码阅读
为防止恶意爬虫,
已开启反爬机制
为防止恶意爬虫,
已开启反爬机制