import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.StringTokenizer;
import javax.imageio.ImageIO;
public class Parser
{
public static BufferedImage obcy;
ArrayList<String> lista1 = new ArrayList<String>();
ArrayList<String> lista2 = new ArrayList<String>();
ArrayList<String> lista3 = new ArrayList<String>();
ArrayList<String> lista4 = new ArrayList<String>();
static int [] lista5 = new int[12];
static int [] lista = {1,2,3}; // Ta jest dla porównania i dla niej jest ok
Parser()
{
try
{
obcy = ImageIO.read(getClass().getResource("/rysunek1.png"));
}
catch(Exception e)
{
e.printStackTrace();
}
File plik = new File("plikKonfiguracyjny.txt");
try
{
Scanner odczyt = new Scanner(plik);
StringTokenizer token;
while(odczyt.hasNextLine())
{
token = new StringTokenizer(odczyt.nextLine(), " ");
while(token.hasMoreElements())
{
lista1.add(token.nextToken());
}
}
} catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
for(int i = 0; i < lista1.size(); i++)
{
if(i%2 == 1)
{
lista2.add(lista1.get(i));
}
}
for(int i = 0; i < lista2.size() - 3; i++)
{
lista3.add(lista2.get(i));
}
StringTokenizer token2;
for(int i = lista2.size() - 3; i < lista2.size(); i++)
{
token2 = new StringTokenizer(lista2.get(i), "x");
while(token2.hasMoreElements())
{
lista4.add(token2.nextToken());
}
}
for(int i = 1; i < lista3.size(); i++ )
{
lista5[i - 1] = Integer.parseInt(lista3.get(i));
}
for(int i = 0; i < lista4.size(); i++ )
{
lista5[i+6] = Integer.parseInt(lista4.get(i));
}
}
public static void main(String[] args)
{
Parser parser = new Parser();
System.out.println(Arrays.toString(lista5)); //wypisuje [100, 0, 0, 0, 1, 8, 12000, 9000, 0, 0, 0, 0] co jest ok
}
}
Druga klasa (ten sam pakiet)
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class Gra extends JFrame implements ActionListener
{
JButton cofnij = new JButton("Cofnij");
JButton graj = new JButton("Graj");
JLabel nickNapis = new JLabel("Podaj nick");
JTextField nick = new JTextField();
JLabel poziomNapis = new JLabel("Wybierz poziom trudnosci");
ButtonGroup grupa = new ButtonGroup();
JRadioButton niski = new JRadioButton("Niski", true);
JRadioButton sredni = new JRadioButton("Sredni");
JRadioButton wysoki = new JRadioButton("Wysoki");
private Gra()
{
setSize(600, 900);
System.out.println(Parser.lista5[0]); // wypisuje 0 mimo iż powinno wypisywać 100
System.out.println(Parser.lista[0]); // dobrze, wypisuje 1
setTitle("Gra");
grupa.add(niski);
grupa.add(sredni);
grupa.add(wysoki);
Panel pGRUPA = new Panel();
pGRUPA.add(poziomNapis);
pGRUPA.add(niski);
pGRUPA.add(sredni);
pGRUPA.add(wysoki);
Panel pCENTER = new Panel();
pCENTER.setLayout(new BoxLayout(pCENTER, BoxLayout.LINE_AXIS));
pCENTER.add(nickNapis);
pCENTER.add(nick);
Panel pSOUTH = new Panel();
pSOUTH.add(cofnij);
pSOUTH.add(graj);
this.setLayout(new BorderLayout());
this.add(pCENTER, BorderLayout.CENTER);
this.add(pGRUPA, BorderLayout.NORTH);
this.add(pSOUTH, BorderLayout.SOUTH);
this.pack();
this.setVisible(true);
graj.addActionListener(this);
cofnij.addActionListener(this);
}
private static Gra gra = new Gra();
public static Gra getInstance()
{
return gra;
}
@Override
public void actionPerformed(ActionEvent e)
{
Object zrodlo = e.getSource();
if(zrodlo == cofnij)
{
dispose();
}
}
public static void main(String[] args)
{
// TODO Auto-generated method stub
}
}
W innych klasach jest tak samo.