在使用perl程式讀取檔案時,如何識別檔案的開頭和結尾
1樓:網友
問題提問的不很明確。關於常用的檔案頭,檔案尾的操作如下:
跳到檔案頭。 seek fh, 0, 0;
跳到檔案尾: seek fh,0, 2;
判斷是否到達檔案尾部: if(eof(fh)).
2樓:利物甘蔗
檔案的開頭和結尾,你是指第一行和最後一行嗎?perl讀取檔案是逐行讀取,直到檔案尾部的。
perl雜湊怎樣實現輸出的順序還是按照檔案裡的順序
3樓:網友
雜湊可能不會按照檔案裡的順序儲存在記憶體中,因為它儲存的規則是怎麼舒服怎麼存。
當執行%hash = ("a" => 10, "b" => 50, "c" => 30);
foreach (keys %hash)
";看到的輸出結果很可能不是當初賦值時的順序。
可以使用 sort給鍵值排序。
foreach (sort keys %hash)
";此時看到的結果會根據字母順序進行排序。
還可以使用@key = sort <=> $hash}keys %hash;
這樣就是根據雜湊鍵對應的值進行排序,此時是按數字大小進行公升序排序。將$a和$b的位置調換就是降序,如@key = sort <=> $hash}keys %hash;
foreach (@key)
";結果是根據鍵值進行排序。
perl 怎麼得到unix上檔案的建立時間
4樓:網友
一、開啟securecrt
二、連線unix系統。
三、輸入命令。
perl -mposix=strftime -le 'print strftime("%y%m%d%m%s",localtime( (stat "file")[10] )'
5樓:陽光上的橋
stat()函式返回乙個陣列。下面是陣列各元素的含義。
0 dev 裝置號 驅動器號(c:通常是2,d:通常是3,等等)1 ino 索引節號 總是0
2 mode 檔案的方式 無。
3 nlink 鏈結號 通常為0;windows nt;檔案系統允許鏈結。
4 uid 檔案所有者的使用者id(uid)總是05 gid 檔案所有者的組id(gid)總是06 rdev 特殊檔案資訊 驅動器號(重複)7 size 檔案大小(以位元組計)檔案大小(以位元組計)8 atime 上次訪問的時間 上次訪問的時間9 mtime 上次修改的時間 上次修改的時間10 ctime inode修改時間 檔案的建立時間11 blksz 磁碟塊的大小 總是0
12 blocks 檔案中的塊的數量 總是0可以獲取對應的建立、修改、訪問時間。用perl中內建的時間函式time()返回的結果可以直接比較。因為都是從1700年以來的秒數。
file='';
mtime = (stat '')[9];
t = localtime $mtime;
date = sprintf "%02u/%02u/%02u %02u:%02u:%02u", $t[4] +1, $t[3], t[5] %100, $t[2], t[1], t[0];
print $date, "";
執行結果如下:
e:\ygb>perl
perl 程式設計,讀取檔案然後修改檔案內容的問題
6樓:網友
可以試試先將要修改的檔案改名,然後讀取內容和修改內容,儲存到另乙個與原來同名的檔案,最後將改了檔名的刪除。
7樓:網友
open(file,"+)
close(file);
看看這樣,也該行。 xml操作,為什麼不用模組呢? 這樣單行處理,可能會誤操作替換阿。
高分求perl寫:讀取檔案,按要求輸入到新生成的檔案裡.
8樓:網友
請詳細描述一下你的問題吧。你是指a檔案中,的格式是第乙個,然後轉換成b檔案的格式是下面那樣子嗎?
還是a檔案是配置,需要讀取到某些變數裡面?又或者其他意思?最好是能舉證乙個例子,執行前後的。
perl中讀取檔案的問題
9樓:
不可以:
open file1,"1";
open file2,"2";
while(defined($line1=))}可以:
open file1,"1";
while(defined($line1=))}可以使用for的巢狀。
open f1,"1";
open f2,"2";
a1=;a2=;
for $line1 (@a1)}
10樓:連續用
可以啊,你現在不是已經差不多寫出來了嗎。
perl 如何獲取系統當前日期 格式為
11樓:網友
use posix;
my $year_month_day=strftime("%y%m%d",localtime())
這是現成的函式,不用再自己搞了。 %y 是 yyyy格式的年 %m是mm格式的月 %d是dd格式的日。
自己想要什麼格式,如"%y-%m-%d" 就是yyyy-mm-dd,自己調整就ok。
12樓:網友
給你一段完整的獲取時間的**:
第乙個引數是要獲取的時間格式,yy-2位年,yyyy-4位年,mm-月,dd-日,hh-時,mi-分,ss-秒。
第二個引數是時間,如果省略,就使用系統當時時間。
例如你這個用直接用 gettime("yyyymmdd");
或者gettime("yyyy-mm-dd hh:mi:ss")返回 2013-09-10 13:38:23
或者gettime("yyyy年mm月dd日")返回 2013年09月10日。
sub gettime else
if ($mday < 10) elseif ($hour < 10) elseif ($min < 10) elseif ($sec < 10) else$_;
13樓:灰狼來了羊在哪
要獲取的時間格式,yy-2位年,yyyy-4位年,mm-月,dd-日,hh-時,mi-分,ss-秒。
第二個引數是時間,如果省略,就使用系統當時時間。
例如你這個用直接用 getti
14樓:網友
my $date = `date +%y%m%d`;
自己想要什麼格式,如"%y-%m-%d" 就是yyyy-mm-dd,自己調整就ok。
如何用perl讀取資料夾下的大量首列相同的tt文
opendir d,1 or die 把所有txt檔案都放到一個叫1的資料夾中 array grep txt readdir d foreach list array foreach new 二維陣列 把每個檔案的每一行split成兩個元素,然後把第二個元素 也就是第二列的資料 加到二維陣列中,並且...
dir命令如何讓檔案按特定排列順序顯示
dir命令是顯示目錄檔案和子目錄列表,但是不對子目錄遞迴。如果在不帶引數的情況下使用,則 dir 顯示磁碟的卷標和序列號,後接磁碟上目錄和檔案的列表,包括它們的名稱和最近修改的日期及時間。dir 可以顯示檔案的副檔名以及檔案的大小 以位元組為單位 dir 也顯示列出的檔案及目錄的總數 累計大小和磁碟...
農曆二十四節氣名按順序寫出,按時間順序寫出農曆二十四節氣名
春雨驚春清谷天,夏滿芒夏暑相連,秋處露秋寒霜降,冬雪雪冬小大寒。依次為立春 雨水 驚蟄 春分 清明 穀雨 立夏 小滿 芒種 夏至 小暑 大署 立秋 處暑 白露 秋分 寒露 霜降 立冬 小雪 大雪 冬至 大寒 小寒 立春 立是開始的意思,立春就是春季的開始。雨水 降雨開始,雨量漸增。驚蟄 蟄是藏的意思...