看板
[ Perl ]
討論串[問題] Perl讀檔 in Windows
共 5 篇文章
內容預覽:
試一下下面的 code,就可以看出 $/ ($INPUT_RECORD_SEPARATOR) 對於. 換行的影響,也就是逐行讀入的差別所在。如果要讀的檔案不確定是用. 何種換行符號,或是都存在各種換行符號,那麼可以考慮用 slurp mode. 都讀進來後再處理。這個問題也很常見於寫一些網路應用程式
(還有1065個字)
內容預覽:
看到這邊就想到大約兩年前的討論串 不過往上爬文已經找不到了. 有一種方法叫做slurp 作法就是把$/設為undef. 這樣在讀檔就會略過換行符號 把整個檔的內容放到字串中. 這種方法用在網頁的tag處理很有用. 因為在擷取網頁資料時都是在擷取兩個tag中間的資訊. 所以無形中換行符號就變成一種問題
(還有29個字)
內容預覽:
找到原因了..... 首先要先知道. Windows的 command-line(亦即DOS) 按Enter時會送出\r\n. 但是在txt中, 只有\n (也許整個非Dos環境都是如此). chomp預設只會篩掉\n,. 所以如果從STDIN讀入(DOS輸入),. 就會仍遺留下\r. 改$/ =
(還有87個字)
內容預覽:
在寫駱馬書7-1時又出現新問題. open STORY, "<", "story.TXT";. while(<STORY>). {. print if /Fred/;. }. close STORY;. 檔案讀取無法一次讀一列(在txt檔中以Enter輸入的換行分列). $_會一口氣吃進全部的文字
(還有60個字)