[英]How can I get the directory (file path) separator in Perl?
在Java的情況下,我們可以使用路徑分隔符
System.getProperty("path.separator");
Perl中有類似的方法嗎? 我想做的就是找到一個目錄,直接子目錄。 說我有兩個參數$a
和$b
; 我基於路徑分隔符拆分第一個並再次連接它,除了最后一個片段並與第二個參數進行比較。
問題是我的代碼必須是通用的,為此我需要知道系統相關的路徑分隔符是什么?
您不應該手動形成文件路徑 - 而是使用File :: Spec模塊:
($volume, $directories,$file) = File::Spec->splitpath( $path );
@dirs = File::Spec->splitdir( $directories );
$path = File::Spec->catdir( @directories );
$path = File::Spec->catfile( @directories, $filename );
您可以在File :: Util中使用SL常量 。
接受的答案解決了您的真正問題,但如果您真的想要獲取分隔符(僅使用perl核心模塊):
my $sep = File::Spec->catfile('', '');
這將兩個空文件名與當前系統的分隔符連接起來,只留下分隔符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.