電子書籍の厳選無料作品が豊富!

C++で

別ファイルから読み込んだ文字列をファイルパスとして使用したいのですが、この時\を\\に置き換えないと認識してもらえないですよね。


例:読み込んだ文字列 C:\Documents and Settings\user\My Documents\a.text
これをC:\\Documents and Settings\\user\\My Documents\\a.text
というように変換したいのです。

読み込んだ文字列中に\を見つけたら\\に置き換える。もしくは\をもうひとつ挿入・・・といったコードを書けばよいと思うのですが、こちらの方法が良く思いつきません。うまくできるようなアドバイスをいただける方がいましたらどうかよろしくお願いします。

A 回答 (1件)

そんな事をする必要はありません。



\\を使うのは、ソースコードで「”」で括った文字列の中に「\」を書きたい時にだけ必要です。

ファイルの中に入っている「\が1つになっているパス文字列」は、そのまま、パス文字列として、ファイル操作関数で使えます。余計な加工は一切要りません。

別ファイルに
C:\Documents and Settings\user\My Documents\a.text
と入っているなら、それを文字列変数に読み込んで、そのまま、何もしないで、ファイルオープン関数にファイル名として指定できます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!