CString文件名称为0_asdja_asda.tar.gz,如何改成0.tar.gz
时间: 2024-03-16 10:43:59 浏览: 105
可以使用MFC CString类提供的一些函数来实现文件名的修改,其中包括Find和Replace函数。具体步骤如下:
```c++
CString strFileName = _T("0_asdja_asda.tar.gz");
CString strNewFileName = strFileName;
// 找到第一个下划线的位置
int nIndex = strNewFileName.Find(_T("_"));
if (nIndex != -1)
{
// 截取文件名的前缀
strNewFileName = strNewFileName.Mid(0, nIndex);
// 替换文件名
strNewFileName += _T(".tar.gz");
}
// 输出新文件名
TRACE(_T("New file name: %s\n"), strNewFileName);
```
上述代码中,首先将原文件名保存在CString对象strFileName中,然后将其赋值给另一个CString对象strNewFileName。然后使用Find函数找到第一个下划线的位置,并使用Mid函数截取文件名的前缀。最后使用加号进行字符串拼接,将.tar.gz后缀添加到文件名的结尾。注意,这里使用了宏定义_T来将字符串转换为Unicode格式。
通过这种方式,可以将原文件名"0_asdja_asda.tar.gz"修改为"0.tar.gz"。
阅读全文