🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.perl
7 messages
7 total messages Started by jankes Wed, 17 Jun 2009 09:44
plik -> hash
#51450
Author: jankes
Date: Wed, 17 Jun 2009 09:44
20 lines
1500 bytes
Czesc. Mam takie pytanie, czy da sie wrzucic zawartosc pliku
bezposrednio do zmiennej hash ?
Mamy przykladowy plik .ini w ktorym stoi :

host = 192.168.1.111
port = 5432
database = test
user = jks

chcialbym uzyskac z niego takiego hasha :

%ini = (
host => "192.168.0.160",
port => "5432",
database => "testowa",
user => "postgres"
)

Dzieki z gory.
Pozdrowienia
Re: plik -> hash
#51451
Author: jankes
Date: Wed, 17 Jun 2009 09:47
10 lines
1272 bytes
Oczywiscie takiego :

%ini = (
host => "192.168.1.111",
port => "5432",
database => "test",
user => "jks"
)

:)
Re: plik -> hash
#51452
Author: Stachu 'Dozzie' K.
Date: Wed, 17 Jun 2009 09:47
24 lines
1408 bytes
On 17.06.2009, jankes wrote:
> Czesc. Mam takie pytanie, czy da sie wrzucic zawartosc pliku
> bezposrednio do zmiennej hash ?
> Mamy przykladowy plik .ini w ktorym stoi :
>
> host = 192.168.1.111
> port = 5432
> database = test
> user = jks
>
> chcialbym uzyskac z niego takiego hasha :
>
> %ini = (
> host => "192.168.0.160",
> port => "5432",
> database => "testowa",
> user => "postgres"
> )

No bierzesz i czytasz. W czym problem? Albo korzystasz z modułu do
obsługi plików konfiguracyjnych (do znalezienia w CPAN-ie).

-- 
Stanislaw Klekot
Re: plik -> hash
#51453
Author: jankes
Date: Wed, 17 Jun 2009 09:56
47 lines
2259 bytes
On 17 Cze, 11:47, "Stachu 'Dozzie' K."
<doz...@dynamit.im.pwr.wroc.pl.nospam> wrote:
> On 17.06.2009, jankes wrote:
> > Czesc. Mam takie pytanie, czy da sie wrzucic zawartosc pliku
> > bezposrednio do zmiennej hash ?
> > Mamy przykladowy plik .ini w ktorym stoi :
>
> > host = 192.168.1.111
> > port = 5432
> > database = test
> > user = jks
>
> > chcialbym uzyskac z niego takiego hasha :
>
> > %ini = (
> > host => "192.168.0.160",
> > port => "5432",
> > database => "testowa",
> > user => "postgres"
> > )
>
> No bierzesz i czytasz. W czym problem? Albo korzystasz z modu u do
> obs ugi plik w konfiguracyjnych (do znalezienia w CPAN-ie).
>
> --
> Stanislaw Klekot

Hmm biore i czytam powiadasz ... :)
Takie cos nie dziala:

use strict;
use warnings;
use Text::Trim;

open FH, 'conf.ini' or die $!;
my %ini;

while (<FH>)
{
  $ini{ trim( (split "=", $_)[0] ) } => trim( (split "=", $_)[1] );
}

print $ini{host};

Useless use of hash element in void context at line 11

nie bardzo wiem jak mialby wygladac kod do zczytania tego do hasha.
Re: plik -> hash
#51454
Author: jankes
Date: Wed, 17 Jun 2009 10:07
14 lines
1619 bytes
Ok ogranalem, co za bzdet ....

zamiast $
ini{ trim( (split "=", $_)[0] ) }
=>
trim( (split "=", $_)[1] );

powinno byc
$ini{ trim( (split "=", $_)[0] ) }
=
trim( (split "=", $_)[1] );

Dzieki.
Pozdrowienia
Re: plik -> hash
#51456
Author: hubert depesz lubaczewski
Date: Wed, 17 Jun 2009 10:27
14 lines
1231 bytes
On 2009-06-17, jankes <jankes.mk@gmail.com> wrote:
> Czesc. Mam takie pytanie, czy da sie wrzucic zawartosc pliku
> bezposrednio do zmiennej hash ?
> Mamy przykladowy plik .ini w ktorym stoi :

moduł Config::IniFiles.

z tym, że to co pokazałeś, to nie jest (w/g mnie) prawidłowy plik .ini.

depesz

-- 
Linkedin: http://www.linkedin.com/in/depesz  /  blog: http://www.depesz.com/
jid/gtalk: depesz@depesz.com / aim:depeszhdl / skype:depesz_hdl / gg:6749007
Re: plik -> hash
#51455
Author: Maciej Misiak
Date: Wed, 17 Jun 2009 18:30
19 lines
1428 bytes
jankes pisze:

> powinno byc
> $ini{ trim( (split "=", $_)[0] ) }
> =
> trim( (split "=", $_)[1] );

Ja bym to tak zrobil

   my @dane = map { trim } split "=";
   $ini{$dane[0]} = $dane[1];

ale to kwestia gustu.
Albo

%ini = map { trim } map { split "=" } <FH>;

-- 
grizzley
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads