将 MFC 表单'text'处理为字符类型或常规字符串类型

Dealing with MFC form 'text' as char type or regular string type

本文关键字:类型 字符串 常规 字符 text MFC 表单 处理      更新时间:2023-10-16

在使用Visual Studio 2012修改别人编写的MFC表单时,遇到了一个问题。

在表单中,有一个输入框,它接受文件的整个路径。例)C:folder1test_file.wav在代码中,this->tb_path->Text包含这个。

第一个问题是我找不到处理this->tb_path->Text as的方法char*char类型的数组使用string.h

中的方法

目前,代码使用

system:: String ^fileName = this->tb_path->Text + "_re";

来修改文本,但这实际上阻碍了对文件路径的各种修改。我该如何解决这个问题?

Try

System::String ^fileName = gcnew System::String(this->tb_path->Text + "_re"); 

System::String ^fileName = gcnew System::String(this->tb_path->Text + _T("_re"));

在我看来,你没有在内存中使用gcnew进行必要的分配,然后你从未初始化的内存中获得字符串内的垃圾。