2017-08-10 9 views
0

ファイル名とそのファイルが存在するフォルダを指定して、ファイルへのパスを作成したいとします。フォルダには末尾のスラッシュが含まれている場合があります。 Pythonではos.path.joinがこの問題を解決します。この問題の根本的な解決策はありますか?そうでない場合は、スラッシュが重複していないファイルパスを構築するために、Rで推奨される方法は何ですか?ファイルパスに重複するスラッシュを防止するR

> file.path("/path/to/folder", "file.txt") 
[1] "/path/to/folder/file.txt" 

をしかし、ユーザーが最後のスラッシュとフォルダを提供する場合、file.pathはまだ機能 - しかし、迷惑なダブルスラッシュ行います:

これは正常に動作します

> file.path("/path/to/folder/", "file.txt") 
[1] "/path/to/folder//file.txt" 

私は」をこの共通の問題に対する1つの関数の答えが組み込まれています。

答えて

0

///と置き換えることができます。gsubを使用すると迷惑です。あなたは簡単にカスタム関数に入れることができます

file.path2 = function(..., fsep = .Platform$file.sep){ 
    gsub("//", "/", file.path(..., fsep = fsep)) 
} 

file.path2("/path/to/folder", "file.txt") 
#[1] "/path/to/folder/file.txt" 

file.path2("/path/to/folder/", "file.txt") 
#[1] "/path/to/folder/file.txt" 
関連する問題