[英]how do i assign a list of data from text file to array value, row and column number in perl
[英]How do I add data from a CSV file to an array in Perl?
我已經在網上搜索和搜索了,但是我似乎無濟於事。 我知道這是一個非常簡單的問題,但是我真的很棘手...
我有一個文件目錄,並將目錄名保存到CSV文件中。 它僅由一列數據組成,例如:
100
101
102
103...
我使用以下代碼來創建文件(以防萬一其相關):
open (my $fileh, '>', '/Users/Shared/serials.csv') or die "Could not open file!";
print $fileh `ls -1 $path`;
close $fileh;
print "Saved Serials!";
現在,我要做的就是將文件中的數據讀入數組,然后遍歷每個值以完成任務。 我不知道該怎么做...
目前,我正在將代碼中的數字手動輸入到數組中,例如:
@ser_list = (100,101,102,103,...);
如上所述,我想使用ls
命令行查詢自動寫文件名(數字),然后從那里讀回腳本。 如果有一種方法可以執行此操作,而不必制作一個單獨的值文件,那就太好了。
在示例中,該數組稱為@ser_list,從那里我從數組中讀取下一個$ ser_num並在循環中使用它。
foreach $ser_num (@ser_list) {....}
預先感謝大家的幫助和耐心!
不要在Perl程序中使用ls
。 您可以改用glob :
my @files = glob "$path/*";
如果需要使用路徑和文件名,請檢查Path :: Tiny 。
要讀取具有路徑的行到數組中,只需使用
open my $fh, '<', $filename or die $!;
chomp( my @paths = <$fh> );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.