1.将文件保存到sqlserver数据库的相关操作:
Update t1 set filedata = ‘.txt’ , filedata = ( select * from openrowset( bulk ‘E:\.txt’, SINGLE_BLOB ) as data ) where resultId =
Select convert( varchar(), data ) from t1 where resultId =
注:fileType: varchar(), filedata: varbinary(MAX)
2.将sqlserver里的文件数据读出来到文件:
CFile outfile(...); // 参考MSDN
LPSTR buffer = (LPSTR)GlobalLock( cdbvariant.m_pbinary->m_hData );
Outfile.Write(buffer,cdbvariant.m_pbinary->m_dwDataLength);
GlobalLock(cdbvariant.m_pbinary->m_hData);
Outfile.close();
执行某个文件:
shellExecute( NULL,NULL,_T(“.doc”), NULL,_T(“E:\\.doc”),NULL);
3.文件查找:
CFileFind findfile;
CString path = “D:\\”;
If( path.Right() != “\\”) path = path + “\\*.bmp”;
bool res = findfile.FindFile(path);
While(res)
{
res = findfile.FindNextFile();
if(!findfile.IsDots())
{
findfile.GetFileTitle();
....
}
}
4.MFC显示图片
HBITMAP hp;
hp = (HBITMAP)LoadImage(NULL,_T(findfile.GetFilePath()),IMAGE_BITMAP,,,LR_LOADFROMFILE|LRCREATEDIBSECTION);
m_pictureshow.setBitmap(hp);
5.得到当前的时间
CTime ct = CTime::GetCurrentTime();
CString nowTime = ct.Format(“%Y-%m-%d %H:%M:%S”);
6.连接数据库
#include<afxdb.h>
CDatabase cdb;
if(!cdb.OpenEx( Getconnect(),CDatabase::noodbcDialog)){ return;}
CRecordSet crs(&cdb);
try
{
if( !crs.open( CRecordSet::dynamic, _T(“select * from t”)))
{ return ; }
}catch( CDBException ee ){}
short count = crs.GetODBCFiledCount();
int row = ;
crs.MoveFirst();
CDBVariant cdbvariant;
while( !crs.IsEOF() )
{
int col =;
for( short index = ; index < count; ++index)
{
crs.GetFileValue(index,cdbvariant);
m_list.AddItem(row, ++col, ....);
}
++row ;
crs.MoveNext();
}
crs.close();
cdb.close();
7.打开word保存数据
Colevariant, CApplication, CDocuments, CDocument0, CSelection