ファイラ実装


  ファイル情報のセット



  
// *********************************************************
// ファイルリスト
// *********************************************************
void MyClass::MyEnumFile()
{
	this->MyEnumListEnd();
	this->MyEnumListInit();

	LboxString LWork;
	LWork.operator = ( "*.*" );
	LView->Hide();
	this->MyEnumFileGet( &LWork );
	LView->Fit();
	LView->Show();
}
  

  
// *********************************************************
// ファイル情報の取得
// *********************************************************
void MyClass::MyEnumFileGet(LboxString *LWild)
{
	// システムイメージリストのインデックス取得用
	LboxFileSystem Fs;
	LboxString LWork;

	if ( this->MyDir.operator != ("") ) {
		Fs.ChangeDirectory( &(this->MyDir) );
	}

	// ファイル情報取得用
	HANDLE hFile;
	BOOL bRet;
	WIN32_FIND_DATA wfd;
	FILETIME ft;
	SYSTEMTIME st;

	hFile = ::FindFirstFile( LWild->szLboxString, &wfd );
	if ( hFile == INVALID_HANDLE_VALUE ) {
		return;
	}

	bRet = true;
	while( bRet ) {

		// ファイルのみ
		if ( !(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ) {
			LView->AddRow();
			// ファイル名
			LView->SetColumnText( 0, wfd.cFileName );
			// サイズ
			LWork.Printf( "%lu", wfd.nFileSizeLow );
			LWork.NumberFormat( &LWork );
			LView->SetColumnText( 1, &LWork );
			// 更新日時
			::FileTimeToLocalFileTime( &(wfd.ftLastWriteTime), &ft );
			::FileTimeToSystemTime( &ft, &st );
			LView->SetColumnPrintf(
				2,
				"%02d/%02d/%02d %02d:%02d:%02d",
				st.wYear,
				st.wMonth,
				st.wDay,
				st.wHour,
				st.wMinute,
				st.wSecond
			);
			// イメージ
			LView->SetImage(
				LView->nCurrentRow,
				0,
				Fs.SmallIconIndex( wfd.cFileName )
			);
		}

		bRet = ::FindNextFile( hFile, &wfd );

	}
	::FindClose( hFile );

	LView->Sort( 0, 0 );
}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ