Perl学习16之读文件,存入哈希,输出到文件
Posted pythonic生物人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Perl学习16之读文件,存入哈希,输出到文件相关的知识,希望对你有一定的参考价值。
"pythonic生物人"的第27篇分享。
摘要
本文介绍perl如何读取文件,存入哈希,调用哈希,存入文件。
正文开始啦
#! /usr/bin/perl
use strict;
use warnings;
if(@ARGV!=2){
print " Usage: perl $0 <infile> ";
die " Use with correct infile";
}
##读入文件$ARGV[0]存入哈希
#open IN, "<$ARGV[0]";
#open IN, "<","$ARGV[0]";
open IN,"$ARGV[0]" or die;#三种方式均可以打开句柄
my %para;#定义一个哈希
while(<IN>){
chomp;#chomp去掉末尾换行符
if(/^#/){next;};#跳过以#开头的行
if(/^$/){next;};#跳过空行
my ($k,$v)=split (/=/,$_);#使用"="分割每行,每读取完一行后perl默认存储在$_里
$para{$k}=$v;#存入hash
}
close IN;#关闭句柄
my @key=keys %para;#keys函数取出哈希所有的键
my @value=values %para;#values函数取出哈希所有的值
##输出内容到$ARGV[1]
foreach my $key (@key){
open OUT,">>","$ARGV[1]" or die;#打开输出文件句柄,">>"追加输出
print OUT "$key $para{$key} ";#输出值
close OUT;#关闭句柄
}
输入文件test.para为:
输出文件open1为:
点击专辑查看
持续更新,欢迎您"关注"、"在看"、"分享"
以上是关于Perl学习16之读文件,存入哈希,输出到文件的主要内容,如果未能解决你的问题,请参考以下文章