通过后缀判断一个文件是什么文件(音频或者视频)

音频/视频/图片 的文件都比较多

为了避免判断很多次,可以使用统一的方式

定义一个字符串,将所需要识别的后缀连接起来,并且中间增加一些分割的符号

例如:const std::wstring CHCFileBrowserPage::m_strAudioSuffi = _T(".mp3.mp2.wav.aac.ogg.au.wma.flac.m4a.ac3.");

然后通过字符串查找的方式确定是哪种类型的文件

void CHCFileBrowserPage::ClassifyFile(const HCString& strFileName)
{
	int nCurrentPos = (int)strFileName.rfind(_T('.'));
	if (nCurrentPos != HCString::npos)
	{
		HCString strSuffi;
		strSuffi.append(strFileName, nCurrentPos, strFileName.size() - nCurrentPos);
		strSuffi += _T('.');
		ToLower(strSuffi);
		if (strSuffi.size() >= 3)
		{
			if (m_strAudioSuffi.find(strSuffi.c_str(), 0) != HCString::npos)
			{
				m_AudioFileVec.push_back(strFileName);
			}
			else if (m_strVideoSuffi.find(strSuffi.c_str(), 0) != HCString::npos)
			{
				m_VideoFileVec.push_back(strFileName);
			}
			else if (m_strImageSuffi.find(strSuffi.c_str(), 0) != HCString::npos)
			{
				m_ImageFileVec.push_back(strFileName);
			}
			else
			{
				m_OtherFileVec.push_back(strFileName);
			}
		}
	}
}

如此而已

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值