Schrift
[thread]12059[/thread]

Problem beim benutzen von Dateien !



<< |< 1 2 >| >> 13 Einträge, 2 Seiten
cherished
 2008-06-23 11:39
#111342 #111342
User since
2008-06-18
31 Artikel
BenutzerIn
[default_avatar]
Hallo !

Ich wollte 2 Dateien nutzen für mein Programm und diese aber Variabel als Parameter machen.
Habe das folgend gemacht.

$solldatei = @ARGV[0] ;
$istdatei = @ARGV[1] ;
$DestFile = @ARGV[2];

open (my $filehandle, "<$solldatei");
open (my $filehandle1, "<$istdatei");
open(fAUSDATEI, ">$DestFile");

Iwie Rockt das aber nicht. Lediglich die ausgabe funktioniert.
cherished
 2008-06-23 11:41
#111343 #111343
User since
2008-06-18
31 Artikel
BenutzerIn
[default_avatar]
Funktioniert !
sorry für unnötigen Post...
nepos
 2008-06-23 12:25
#111347 #111347
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Trotzdem ist das grausamer Code:
1.) Kein use strict und use warnings
2.) Mal Filehandle in my $filehandle, mal fAUSDATEI
3.) Kein Abfangen von Fehlern beim Öffnen der Dateien
4.) Kein Abfangen, wenn ARGV zu wenig Argumente enthält.
GwenDragon
 2008-06-23 13:48
#111356 #111356
User since
2005-01-17
14598 Artikel
Admin1
[Homepage]
user image
Stell doch bitet erst einmal
use strict;
#use warnings;
use diagnostics;

an den Anfang deines Skripts, dann zeigt dir Perl, was faul ist.Und @ARGV[...] ist auch nicht das, was wirklich gemeint ist.

PS: http://perldoc.perl.org/diagnostics.html
pq
 2008-06-23 14:21
#111360 #111360
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
GwenDragon+2008-06-23 11:48:13--
Stell doch bitet erst einmal
use strict;
#use warnings;
use diagnostics;

wieso ist das warnings auskommentiert?
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
moritz
 2008-06-23 14:36
#111362 #111362
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
pq+2008-06-23 12:21:05--
wieso ist das warnings auskommentiert?


Weil diagnostics die warnings schon impliziert?
pq
 2008-06-23 15:02
#111363 #111363
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
moritz+2008-06-23 12:36:39--
Weil diagnostics die warnings schon impliziert?

hmm, ist für mich kein grund, das auszukommentieren. nachher nimmt man das
diagnostics weg, aber vergisst das warnings. und es schadet ja auch nix.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
GwenDragon
 2008-06-23 15:20
#111365 #111365
User since
2005-01-17
14598 Artikel
Admin1
[Homepage]
user image
Ich wollte nur verdeutlichen, dass es warnings und diagnostics gibt, deswegen.
Un in meinen Codes schreibe ich kurz mal use diagnostics; rein und kommentiere use warnings; aus. mein automatismus.
cherished
 2008-06-24 12:11
#111402 #111402
User since
2008-06-18
31 Artikel
BenutzerIn
[default_avatar]
nepos+2008-06-23 10:25:58--
Trotzdem ist das grausamer Code:
1.) Kein use strict und use warnings
2.) Mal Filehandle in my $filehandle, mal fAUSDATEI
3.) Kein Abfangen von Fehlern beim Öffnen der Dateien
4.) Kein Abfangen, wenn ARGV zu wenig Argumente enthält.


Bin doch voll der Perl - Einsteiger. Tut mir Leid. Muss mich da auch erst einmal einarbeiten.

Zu 1. werde ich machen.
Zu 2. verstehe nicht was du meinst.
Zu 3. Fehlerüberprüfung habe ich danach ausgelagert in Funktionen bzgl. Ob die Datei vorhanden ist.
Zu 4. Wieso sollte ARGV zu wenig Argumente haben? versteh das nicht ganz.
pq
 2008-06-24 12:26
#111404 #111404
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
cherished+2008-06-24 10:11:42--
Zu 2. verstehe nicht was du meinst.

na das:
Code: (dl )
1
2
open (my $filehandle1, "<$istdatei");
open(fAUSDATEI, ">$DestFile");


$filehandle1, fAUSDATEI
warum das eine mal eine variable und das andere mal ein bareword?
Quote
Zu 3. Fehlerüberprüfung habe ich danach ausgelagert in Funktionen bzgl. Ob die Datei vorhanden ist.

das reicht aber nicht. du musst direkt beim open die fehlerbehandlung machen.
zwischen der abfrage, ob die datei vorhanden ist und dem öffnen selbst kann sie noch verschwinden.
das ist ernst gemeint. nennt sich Wikipedia:Race_condition
Quote
Zu 4. Wieso sollte ARGV zu wenig Argumente haben? versteh das nicht ganz.

na weil du das programm mit zuwenig parametern aufrufst?
man sollte nicht so programmieren, dass nur in dem fall alles glattgeht, wenn alle annahmen
stimmen. wirklich sauber wird es nur, wenn du alle eventualitäten abfängst. und wenn man sich
das einmal angewöhnt hat, geht das auch einfacher.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2008-06-23 11:39.