私は次のような文字列を持っています"c:\x\y\z"
形で欲しい"c://x//y//z"
使ってみstdString.replace("\","//");
たけどダメ。
助言がありますか?
文字列が の場合、文字列"c:\x\y\z"
に no はありません\
。\
エスケープ文字を示します。文字列を に変更します"c:\\x\\y\\z"
。
また、どのように機能するかに注意してくださいreplace
- http://www.cplusplus.com/reference/string/string/replace/
'\\'
1文字を2文字に直接置き換えることはできないと思います"//"
. (私が間違っていることが証明されるかもしれません)。
別:
std::stringstream ss;
for ( int i = 0 ; i < str.size() ; i++ )
{
if ( str[i] == '\\' )
ss << "//";
else
ss << str[i];
}
str = ss.str();
ソースコードでファイルパスをハードコーディングした場合は、値を次のように変更できます"c:\\x\\y\\z"
stdString.replace("\\","\/\/"); ?