批量转换文件名
来源:互联网 发布:知乎 西方哲学史 编辑:程序博客网 时间:2024/04/30 04:08
// The system calls this function to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CModifyFilenamesDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CModifyFilenamesDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
// OnOK();
TCHAR szFind[MAX_PATH] = {0};
CString strPATH;
TCHAR szContain[MAX_PATH] = {0};
TCHAR szReplace[MAX_PATH] = {0};
CString strOriginalFileName;
CString strReplaceFileName;
CString strContain;
CString strReplace;
WIN32_FIND_DATA FindFileData;
GetDlgItemText(IDC_E_PATH, strPATH);
GetDlgItemText(IDC_E_CONTAIN_TEXT, strContain);
GetDlgItemText(IDC_E_REPLACE_TEXT, strReplace);
_tcscpy(szFind, strPATH.GetBuffer());
strPATH.ReleaseBuffer();
_tcscat(szFind, _T("\\*.*"));
HANDLE hFind=::FindFirstFile(szFind, &FindFileData);
if (INVALID_HANDLE_VALUE == hFind)
return;
while(TRUE)
{
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
}
else
{
CString strTemp;
// 替换文件名
strTemp.Format(_T("%s"), FindFileData.cFileName);
// 原始文件名
strOriginalFileName.Format(_T("%s\\%s"), strPATH, strTemp);
// 替换文件名
int num = strTemp.Replace(strContain, strReplace);
strReplaceFileName.Format(_T("%s\\%s"), strPATH, strTemp);
MoveFile( strOriginalFileName.GetBuffer(), strReplaceFileName.GetBuffer());
strReplaceFileName.ReleaseBuffer();
strOriginalFileName.ReleaseBuffer();
}
// 查找下一个文件
if (!FindNextFile(hFind, &FindFileData))
break;
}
FindClose(hFind);
}
void CModifyFilenamesDlg::OnBnClickedButton1()
{
CFileDialog dlg(TRUE,//TRUE是创建打开文件对话框,FALSE则创建的是保存文件对话框
_T(".*"),//默认的打开文件的类型
NULL,//默认打开的文件名
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,//打开只读文件
_T("(*.*)|*.*||"));//所有可以打开的文件类型
if(dlg.DoModal() == IDOK)
{
CString m_FilePath = dlg.GetPathName();////////取出文件路径
int nPos;
nPos = m_FilePath.ReverseFind('\\');
m_FilePath = m_FilePath.Left(nPos);
SetDlgItemText(IDC_E_PATH, m_FilePath);
}
// TODO: Add your control notification handler code here
}
void CModifyFilenamesDlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
UINT count;
TCHAR filePath[200] = {0};
count = DragQueryFile(hDropInfo, 0, filePath, sizeof(filePath));
CString m_FilePath(filePath);
FILE* file = NULL;
file = _tfopen(filePath, _T("rb"));
if (file != NULL)
{
int nPos;
nPos = m_FilePath.ReverseFind('\\');
m_FilePath = m_FilePath.Left(nPos);
fclose(file);
}
SetDlgItemText(IDC_E_PATH, m_FilePath);
DragFinish(hDropInfo);
}
// the minimized window.
HCURSOR CModifyFilenamesDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CModifyFilenamesDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
// OnOK();
TCHAR szFind[MAX_PATH] = {0};
CString strPATH;
TCHAR szContain[MAX_PATH] = {0};
TCHAR szReplace[MAX_PATH] = {0};
CString strOriginalFileName;
CString strReplaceFileName;
CString strContain;
CString strReplace;
WIN32_FIND_DATA FindFileData;
GetDlgItemText(IDC_E_PATH, strPATH);
GetDlgItemText(IDC_E_CONTAIN_TEXT, strContain);
GetDlgItemText(IDC_E_REPLACE_TEXT, strReplace);
_tcscpy(szFind, strPATH.GetBuffer());
strPATH.ReleaseBuffer();
_tcscat(szFind, _T("\\*.*"));
HANDLE hFind=::FindFirstFile(szFind, &FindFileData);
if (INVALID_HANDLE_VALUE == hFind)
return;
while(TRUE)
{
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
}
else
{
CString strTemp;
// 替换文件名
strTemp.Format(_T("%s"), FindFileData.cFileName);
// 原始文件名
strOriginalFileName.Format(_T("%s\\%s"), strPATH, strTemp);
// 替换文件名
int num = strTemp.Replace(strContain, strReplace);
strReplaceFileName.Format(_T("%s\\%s"), strPATH, strTemp);
MoveFile( strOriginalFileName.GetBuffer(), strReplaceFileName.GetBuffer());
strReplaceFileName.ReleaseBuffer();
strOriginalFileName.ReleaseBuffer();
}
// 查找下一个文件
if (!FindNextFile(hFind, &FindFileData))
break;
}
FindClose(hFind);
}
void CModifyFilenamesDlg::OnBnClickedButton1()
{
CFileDialog dlg(TRUE,//TRUE是创建打开文件对话框,FALSE则创建的是保存文件对话框
_T(".*"),//默认的打开文件的类型
NULL,//默认打开的文件名
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,//打开只读文件
_T("(*.*)|*.*||"));//所有可以打开的文件类型
if(dlg.DoModal() == IDOK)
{
CString m_FilePath = dlg.GetPathName();////////取出文件路径
int nPos;
nPos = m_FilePath.ReverseFind('\\');
m_FilePath = m_FilePath.Left(nPos);
SetDlgItemText(IDC_E_PATH, m_FilePath);
}
// TODO: Add your control notification handler code here
}
void CModifyFilenamesDlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
UINT count;
TCHAR filePath[200] = {0};
count = DragQueryFile(hDropInfo, 0, filePath, sizeof(filePath));
CString m_FilePath(filePath);
FILE* file = NULL;
file = _tfopen(filePath, _T("rb"));
if (file != NULL)
{
int nPos;
nPos = m_FilePath.ReverseFind('\\');
m_FilePath = m_FilePath.Left(nPos);
fclose(file);
}
SetDlgItemText(IDC_E_PATH, m_FilePath);
DragFinish(hDropInfo);
}
0 0
- 批量转换文件名大小写
- 批量转换文件名
- python 批量文件名转换
- pyhon3 文件名批量转换
- Linux批量转换文件名编码
- Linux中批量把文件名大小写转换
- Linux下 批量转换文件名及文件内容的大小写
- C++ int转换成char 批量生成文件名
- linux下批量修改文件名由大写转换为小写
- 批量修改文件名 批量重命名
- 批量改文件名Version1
- 批量提取文件名
- 批量文件名修改
- 批量更改文件名编码
- 批量修改文件名
- 批量更改文件名
- linux -- 批量重命名文件名
- 批量修改文件名
- 前端后端工具汇总
- 对import了解不深,还麻烦请教
- Springmvc 提高性能的配置去掉静态文件和只要需要的注解[不太确定]
- OpenCv cv::Mat 转 IplImage 函数
- Box2D的一些概念和笔记
- 批量转换文件名
- 物体剔除代码+解析
- android 自定义Toast & 如何使Toast随Activity消失而消失
- win7下通过cocos2d-x2.1.5创建安卓项目解决方案
- PHP读取文件的常见方法
- poj2376 Cleaning Shifts
- 更改sql server 数据库排序规则
- PHP运行出现Notice : Use of undefined constant 的解决办法
- android 设置默认launcher 附上代码