Hej
Mam problem z wyświetleniem danych z pliku txt, mam taki kod:
public class Duplikaty
{
static int licznik = 0;
public static void main(String[] args)
{
liczenie();
}
public static void liczenie()
{
File plik = new File("test.txt");
try
{
BufferedReader czytacz = new BufferedReader(new FileReader(plik));
String wiersz = null;
while((wiersz = czytacz.readLine()) != null)
{
System.out.println(wiersz);
ArrayList<String> lista = new ArrayList<String>();
for(int i = 0; i < 100; i++)
{
lista.add(czytacz.readLine());
}
System.out.println(lista.get(0));
for(int i = 0; i < lista.size(); i++)
{
if(lista.get(i).equals("test1"))
{
licznik++;
}
}
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
System.out.println(licznik);
}
}
Coś mi nie gra z dwoma rzeczami:
-
at Listy.Duplikaty.liczenie(Duplikaty.java:40) at Listy.Duplikaty.main(Duplikaty.java:14)```
14 - liczenie();
40 - if(lista.get(i).equals("test1"))
Nie rozumiem czemu wyrzuca mi Pointera. Szukałem w sieci na ten temat informacji ale był tam głównie dotyczące tego, że obiekt nie jest zadeklarowany żadną wartością. Ale czasami nie mam początkowej wartości i nie mam tego komunikatu.
- W pliku "test.txt" mam dane:
test1
test2
test3
test4
test5
test1
test1
test1
test1
test1
Na początku programu chcę wylistować cała zawartość ArrayListy, a następnie wyrzucić ilość duplikatów (tak jak w kodzie, dla wartości "test1"). Spodziewam się wylistowania wszystkich elementów a następnie wartości 5 (mam pięć duplikatów), a dostaję:
test1
test2
5
Czemu mi nie listuje całego pliku?