rendered paste bodyimport java.io.*;
import java.util.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
public class Applet9 extends Applet implements ActionListener {
String osaketiedosto;
String kauppapaiva;
String osakkeen_nimi;
StringTokenizer erottelu;
boolean nappi = false;
int rivi;
int yhteensa;
int laske1;
int x1 = 10;
int x2 = 3;
int y1 = 20;
/*
URL osoite = new URL("http://users.utu.fi/mjjpek/stock.txt");
InputStream lukuvirta = osoite.openStream(); //tavuittain lukeva lukuvirta
BufferedInputStream merkit = new BufferedInputStream(lukuvirta); //luetaan virrasta tavut merkkeinä
DataInputStream dis = new DataInputStream(merkit);
*/
//Luodaan nappi josta toiminta käynnistyy
Button start = new Button("Käynnistys");
public void init() {
start.addActionListener(this); //Lisätään tapahtumankäsittelijä
add(start); //nappulaan, johon se viittaa.
}
public void actionPerformed(ActionEvent e) {
nappi = true;
repaint();
}
public void xakseli (Graphics piirto) {
piirto.setColor(Color.blue);
//piirto.drawLine(50, 600, 600, 600);
int x_koko = piirto.getClipBounds().width;
int y_koko = piirto.getClipBounds().height;
//piirto.drawLine(100, 200, 300, 400);
piirto.drawLine((int)0.6*x_koko, (int)0.7*y_koko, (int)0.8*x_koko, (int)0.9*y_koko);
piirto.drawString("Mihin tulee", (int)0.5*x_koko, 20);
}
public void yakseli (Graphics piirto) {
piirto.setColor(Color.red);
//piirto.drawString("Y-akseli", 10, 40);
piirto.drawLine(50, 600, 50, 50);
}
public void tiedot (Graphics piirto) {
piirto.drawString("Päiväykset kohdalleen, tekeillä. " + kauppapaiva, 40, 610);
piirto.drawString("Osake: " + osakkeen_nimi, 50, 625);
piirto.drawString("Jotain muuta?", 50, 640);
}
public void graaffi (Graphics piirto) {
//tähän kaikki whilit ja muut lukemiset
//tätä toistetaan muuttuvilla arvoilla ja väriä pitää vaihtaa
//piirto.fillRect(x1, y1, x2, y2);
try {
File osake = new File ("stock.txt");
FileReader virta = new FileReader (osake);
BufferedReader lue = new BufferedReader (virta);
while ((osaketiedosto = lue.readLine()) !=null) {
erottelu = new StringTokenizer(osaketiedosto, ","); //Luodaan StringTokenizer-olio
kauppapaiva = erottelu.nextToken(); //Hypätään yli tarpeettomien kenttien
rivi++;
System.out.println("Rivi " + rivi);
osakkeen_nimi = erottelu.nextToken();
System.out.println(osakkeen_nimi);
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
laske1 = Integer.parseInt(erottelu.nextToken());
System.out.println(laske1);
//yhteensa = laske1 + laske2 + laske3 + laske4 + laske5;
//System.out.println(yhteensa);
piirto.fillRect(x1, y1, x2, laske1/1000);
x1=x1+3;// Piirtämiseen tarvittavien arvojen muutokset
x2=x2+3;
piirto.setColor(Color.blue);
} //end while
rivi = 0;
} catch (IOException e) { System.out.println("Tuli poikkeus " + e); } //end try, end IOException e
} //end graaffi
public void paint (Graphics piirto) {
//Tätä metodia kutsutaan aina kun appletti tulee esiin muiden ikunoiden takaa
//Tähän metodiin laitetaan piirto-operaatiot
if (nappi==true) {
xakseli(piirto);
yakseli(piirto);
graaffi(piirto);
tiedot(piirto);
} //end if
} //end paint
//end class
public int luku ()
{
try
{
File osake = new File ("stock.txt");
FileReader virta = new FileReader (osake);
BufferedReader lue = new BufferedReader (virta);
while ((osaketiedosto = lue.readLine()) !=null)
{
erottelu = new StringTokenizer(osaketiedosto, ","); //Luodaan StringTokenizer-olio
kauppapaiva = erottelu.nextToken(); //Hypätään yli tarpeettomien kenttien
rivi++;
System.out.println("Rivi " + rivi);
osakkeen_nimi = erottelu.nextToken();
System.out.println(osakkeen_nimi);
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
laske1 = Integer.parseInt(erottelu.nextToken());
System.out.println(laske1);
return laske1;
//yhteensa = laske1 + laske2 + laske3 + laske4 + laske5;
//System.out.println(yhteensa);
} //end while
}
catch (IOException e)
{
System.out.println("Tuli poikkeus " + e);
} //end try, end IOException e
} //end luku
//end class
}
/*
if (nappi==true) {
try {
File f =new File ("stock.txt"); //Määritellään tiedosto
FileReader fr=new FileReader(f);
BufferedReader br = new BufferedReader (fr); //Avataan lukuvirta
while ((osaketiedosto=br.readLine())!=null) {
erottelu=new StringTokenizer(osaketiedosto, ","); //Luodaan StringTokenizer-olio
kauppapaiva = erottelu.nextToken(); //Hypätään yli tarpeettomien kenttien
rivi++;
System.out.println("Rivi " + rivi);
osakeen_nimi = erottelu.nextToken();
System.out.println(osakeen_nimi);
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
erottelu.nextToken();
laske1 = Integer.parseInt(erottelu.nextToken());
System.out.println(laske1);
//yhteensa = laske1 + laske2 + laske3 + laske4 + laske5;
System.out.println(yhteensa);
}
}catch (IOException e) {System.out.println("Tuli poikkeus!");}
rivi = 0;
piirto.drawString("Luku tulee tähän "+(new Integer(laske1).toString()), 10,65);
piirto.setColor(Color.blue);
piirto.drawString("Sinistä.", 10, 20);
piirto.setColor(Color.green);
piirto.drawString("Vihreetä.", 30, 40 );
piirto.fillRect(50, 60, 70, 80);
piirto.setColor(Color.black);
piirto.drawString(osakeen_nimi + " " + kauppapaiva, 50, 150);
} //end if
}
}
*/