servus!
also irgendwie kapier ich das nicht bin ja auch ne frau *hehe
ich habe doch nirgendswo ein string mit \n am ende.
Also folgendes:
Ich lasse daten in ein string eingeben diese werden in eine txt datei geschrieben
(JEDER EINZELNE CODE IST UNGETESTET!!!!)
#!/usr/bin/perl
use strict;
print "Username: ";
my $username = <STDIN>;
chomp $username;
print "\nName: ";
my $name = <STDIN>;
chomp $name;
print "\nAlter: ";
my $alter = <STDIN>;
chomp $alter;
print "\nSonstiges: ";
my $sonstiges
my @speichern = ($username, $name, $alter, $sonstiges);
open (LIST, "<liste.txt");
print LIST join ", ","@speichern";
close LIST;
Das sieht dann in der txt datei genau so aus:
###############################################
Username, Name, Alter, Sonstiges
(noch ist hier keine neue zeile!)
###############################################
Also man könnte den text genauso selbst reinschreiben und dennoch klappt es nicht also hat es damit schon einmal nichts zu tun.
danach will ich es auslesen und ändern:
#!/usr/bin/perl
use strict;
use Tie::File;
open (LIST, "<liste.txt");
while (<LIST>) {
my @ke = split /, /, $_;
(wenn ich jetzt die einzelnen werte aufzähle funktionieren alle
$ke[0] = Username
$ke[1] = Name
..
$ke[3] = Sonstiges
usw.)
(jetzt zum aendern:)
my $ersetzen = <STDIN>; #hier kommt der text rein den ich gegen das wort ersetzen möchte
chomp $ersetzen;
my $open = "liste.txt";
tie my @aenderung, 'Tie::File', $open;
for (@aenderung) {
if ($_ =~ m/Username/) { #hier such ich nach dem usernamen den ich bearbeiten will
s/$aenderung[3]/$ersetzen/g;
}
untie @aenderung;
}
close LIST;
Das war der code im grossen und ganzen ich weiss nicht was ihr noch wissen möchtet beziehungsweise müsst
vielen vielen dank schon einmal!!!!!!!!!!