G
Gabriel
Hello,
I need to DO a subrutine to sort a text file like this:
"ID";"name1";"name2";"surname";age;address;
I have done this one, and it is works ok, but just once. (?)
I think, it writes incorrectly into file, and then it simply can
understand it.
sub ordenar {
open(ORIGINAL_FILE, "<"."$_[0]");
open(SORT_FILE, ">"."$_[0]"."sort");
while ($linea_actual=<ORIGINAL_FILE>) {
@menor_linea = split /;/, $linea_actual;
while ($linea_actual=<ORIGINAL_FILE>) {
@linea_actual = split /;/, $linea_actual;
if ($menor_linea[$_[1]] gt $linea_actual[$_[1]]) {
@menor_linea = @linea_actual;
}
}
$linea =
"$menor_linea[0];$menor_linea[1];$menor_linea[2];$menor_linea[3];$menor_linea[4];$menor_linea[5]";
&eliminar_registro($_[0], $menor_linea[0]);
print SORT_FILE $linea;
close(SORT_FILE);
close(ORIGINAL_FILE);
open(SORT_FILE, ">>"."$_[0]"."sort");
open(ORIGINAL_FILE, "<"."$_[0]");
}
close(ORIGINAL_FILE);
close(SORT_FILE);
unlink($_[0]);
rename("$_[0]"."sort", $_[0]);
}
I need to DO a subrutine to sort a text file like this:
"ID";"name1";"name2";"surname";age;address;
I have done this one, and it is works ok, but just once. (?)
I think, it writes incorrectly into file, and then it simply can
understand it.
sub ordenar {
open(ORIGINAL_FILE, "<"."$_[0]");
open(SORT_FILE, ">"."$_[0]"."sort");
while ($linea_actual=<ORIGINAL_FILE>) {
@menor_linea = split /;/, $linea_actual;
while ($linea_actual=<ORIGINAL_FILE>) {
@linea_actual = split /;/, $linea_actual;
if ($menor_linea[$_[1]] gt $linea_actual[$_[1]]) {
@menor_linea = @linea_actual;
}
}
$linea =
"$menor_linea[0];$menor_linea[1];$menor_linea[2];$menor_linea[3];$menor_linea[4];$menor_linea[5]";
&eliminar_registro($_[0], $menor_linea[0]);
print SORT_FILE $linea;
close(SORT_FILE);
close(ORIGINAL_FILE);
open(SORT_FILE, ">>"."$_[0]"."sort");
open(ORIGINAL_FILE, "<"."$_[0]");
}
close(ORIGINAL_FILE);
close(SORT_FILE);
unlink($_[0]);
rename("$_[0]"."sort", $_[0]);
}