写了个改文件名的程序,环境是vs2022。
运行发现有某些带“♪”这一类的特殊字符的文件在rename的时候被跳过了,一顿捣鼓之后加了条system(“chcp 65001“),设置里打上了utf-8,现在cout是能输出“♪”,可是rename还是那样
string a = “D:\\aaaa♪.txt”;
string b = “D:\\aaa♪.txt”;
rename(a.c_str(),b.c_str);
换了char a[]也不好使
换wstring加上locale和wrename也不好使(可能是我locale设置的问题)我写的是setlocale(lc_all,“zh_cn“)
大佬们求支支招
运行发现有某些带“♪”这一类的特殊字符的文件在rename的时候被跳过了,一顿捣鼓之后加了条system(“chcp 65001“),设置里打上了utf-8,现在cout是能输出“♪”,可是rename还是那样

string a = “D:\\aaaa♪.txt”;
string b = “D:\\aaa♪.txt”;
rename(a.c_str(),b.c_str);
换了char a[]也不好使

换wstring加上locale和wrename也不好使(可能是我locale设置的问题)我写的是setlocale(lc_all,“zh_cn“)
大佬们求支支招
