Napravio sam mali programcic sebi koji pravi spisak pjesama na cd-u. I radi odlicno. Ali ponekad mi se pojavi mali problem.
Funkcija listFiles() klase File uvijek vrati sortiran niz fajlova ali po abecedi, a to mi ne treba. Da pojasnim, ako bi pravi spisak bio ovako:
1. Ime pjevaca - pjesma 1
2. Ime pjevaca - pjesma 2
.
.
.
.
20. Ime pjevaca - pjesma 20
21. IME PJEVACA - Pjesma 21
22. IME PJEVACA - Pjesma 22
Kad pokrenem programcic dobijem ovo:
1. IME PJEVACA - Pjesma 21
2. IME PJEVACA - Pjesma 22
3. Ime pjevaca - pjesma 1
.
.
.
.
itd
Treba mi da bude spisak pjesama onako kako je narezano na cd-u. Mislio sam iskoristiti funkciju lastModified() ali opet ne pali.
Pitanje je. Kako uraditi da ne spisak ne bude sortiran abecedno?
Funkcija listFiles() klase File uvijek vrati sortiran niz fajlova ali po abecedi, a to mi ne treba. Da pojasnim, ako bi pravi spisak bio ovako:
1. Ime pjevaca - pjesma 1
2. Ime pjevaca - pjesma 2
.
.
.
.
20. Ime pjevaca - pjesma 20
21. IME PJEVACA - Pjesma 21
22. IME PJEVACA - Pjesma 22
Kad pokrenem programcic dobijem ovo:
1. IME PJEVACA - Pjesma 21
2. IME PJEVACA - Pjesma 22
3. Ime pjevaca - pjesma 1
.
.
.
.
itd
Treba mi da bude spisak pjesama onako kako je narezano na cd-u. Mislio sam iskoristiti funkciju lastModified() ali opet ne pali.
Pitanje je. Kako uraditi da ne spisak ne bude sortiran abecedno?
Code:
public class Muzika {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
File spisak=new File("spisak.txt");
FileWriter fw= new FileWriter(spisak, true);
File dir= new File("E:\\");
File[] folderi= new File[dir.listFiles().length];
folderi=dir.listFiles();
int k=1;
for(File f: folderi)
{
fw.write(k+". "+f.getName()+"\n");
fw.flush();
k++;
}
fw.close();
}
}
public class Muzika {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
File spisak=new File("spisak.txt");
FileWriter fw= new FileWriter(spisak, true);
File dir= new File("E:\\");
File[] folderi= new File[dir.listFiles().length];
folderi=dir.listFiles();
int k=1;
for(File f: folderi)
{
fw.write(k+". "+f.getName()+"\n");
fw.flush();
k++;
}
fw.close();
}
}