tach zusammen,
ich hab schon mal n paar mal hilfe bekommen von euch leutz und hoffe das ihr mir in dem fall auch weiterhelfen könnt,
ich möchte ne grafik schreiben in nem java-applet die einen kursverlauf regelmäßig darstellt und aktualisiert.
ich hab erma schon n problem mit dem kack - filereader :
ich will in dem fall c ( also c is glaub ich der inhalt der datei ist.txt ) haben. aber wie soll ich die werte aus c aus der schleife rausbekommen, mit break; hab ichs schon versucht. ich will ja mit den werten aus c weiterarbeiten.
für ne grafik die einen kursverlauf darstellt, sind ja auch die vergangenheitswerte erforderlich, sonst gibts ja keinen kurs sondern nur immer wieder einen kleinen strich,
also die x-achse stellt die zeit dar
und die y-achse den euro-wert des kurses
und das applet soll die werte ausm filereader nehmen und den bereits erreichten kursverlauf in die grafik schreiben, dann soll der neu errechnete euro-wert daraufgezeichnet werden.
für mich als noob ne echt komplizierte sache
und am ende brauch man ja noch n filewriter um den neuesten verlauf in eine datei zu schreibn, die datei ist.txt .
ich hab auch n problem mit der formatierung des textes beim filewriter, is echt schwer zu praktizieren
vielleicht hab ich mich auch unklar ausgedrückt, ich möchte n applet schreiben, dass mir den aktuellen kursverlauf eines wertpapieredepots anzeigt, so wie man im i-net den kurs einer aktie an einer grafik verfolgen kann, würd ich das gerne für den gesamtwert eines depots anzeigen lassen, am besten immer in jahresabschnitten, die y-achse soll von 0-100.000 EURO gehen und die x-achse vom 1.jan 2007 bis 12.Dez 2007
aber schauts euch selbst an :
ich hab schon mal n paar mal hilfe bekommen von euch leutz und hoffe das ihr mir in dem fall auch weiterhelfen könnt,
ich möchte ne grafik schreiben in nem java-applet die einen kursverlauf regelmäßig darstellt und aktualisiert.
ich hab erma schon n problem mit dem kack - filereader :
Code:
FileReader f;
int c ;
try {
f = new FileReader("ist.txt");
while ((c = f.read()) != -1) {
System.out.print((char)c);
}
f.close();
} catch (IOException e1) {
e1.printStackTrace();
}
ich will in dem fall c ( also c is glaub ich der inhalt der datei ist.txt ) haben. aber wie soll ich die werte aus c aus der schleife rausbekommen, mit break; hab ichs schon versucht. ich will ja mit den werten aus c weiterarbeiten.
für ne grafik die einen kursverlauf darstellt, sind ja auch die vergangenheitswerte erforderlich, sonst gibts ja keinen kurs sondern nur immer wieder einen kleinen strich,
also die x-achse stellt die zeit dar
und die y-achse den euro-wert des kurses
und das applet soll die werte ausm filereader nehmen und den bereits erreichten kursverlauf in die grafik schreiben, dann soll der neu errechnete euro-wert daraufgezeichnet werden.
für mich als noob ne echt komplizierte sache
und am ende brauch man ja noch n filewriter um den neuesten verlauf in eine datei zu schreibn, die datei ist.txt .
ich hab auch n problem mit der formatierung des textes beim filewriter, is echt schwer zu praktizieren
vielleicht hab ich mich auch unklar ausgedrückt, ich möchte n applet schreiben, dass mir den aktuellen kursverlauf eines wertpapieredepots anzeigt, so wie man im i-net den kurs einer aktie an einer grafik verfolgen kann, würd ich das gerne für den gesamtwert eines depots anzeigen lassen, am besten immer in jahresabschnitten, die y-achse soll von 0-100.000 EURO gehen und die x-achse vom 1.jan 2007 bis 12.Dez 2007
aber schauts euch selbst an :
Code:
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@SuppressWarnings("serial")
public class graffuerfonds extends Applet {
static double krass;
static String datum;
public void paint(Graphics g) {
// Konfigs für Anzeige (Farbe,usw.)
final int BREITE = 1024, HOEHE = 768;
g.setColor(Color.blue);
g.fillRect(0,0,BREITE,HOEHE);
g.setColor(Color.white);
// Grafhistoriendatei einlesen
FileReader f;
int c = 0;
try {
f = new FileReader("ist.txt");
while ((c = f.read()) != -1) {
System.out.print((char)c);
}
f.close();
} catch (IOException e1) {
e1.printStackTrace();
}
int testwert=36429;
// das is ein teswert, weil mir die berechnungen beim ganzen versuchen und probieren
//zu lange daueren
Date d = new Date();
datum=""+d;
krass=0;
if(krass==0)
{
for (Matcher m = Pattern.compile("Jan [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("Feb [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("Mar [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("Apr [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("May [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("Jun [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0){
for (Matcher m = Pattern.compile("Jul [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
if(krass==0)
{
for (Matcher m = Pattern.compile("Aug [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}if(krass==0)
{
for (Matcher m = Pattern.compile("Sep [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}if(krass==0)
{
for (Matcher m = Pattern.compile("Oct [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}if(krass==0)
{
for (Matcher m = Pattern.compile("Nov [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}if(krass==0)
{
for (Matcher m = Pattern.compile("Dec [0-9]+").matcher(datum); m.find(); )
{datum = datum.substring(m.start(), m.end());
Matcher n = Pattern.compile("[0-9]+").matcher(datum);
if (n.find()) {
graffuerfonds.krass = Double.parseDouble( datum.substring(n.start(), n.end()).replace(':' , '.') );
break;}
break;
}
}
// 780 zähler breit
// 365 tage a jahr
double zaehlerprotag=780/31;
double anzeigwertx=(zaehlerprotag*krass);
// 100000 Euro entsprechen 580 y-punkte
double ypunkt = 172.41379310344827586206896551724;
double anzeigwert = (testwert/ypunkt)-580;
g.drawLine(100, 590/* unten links der nullpunkt */, (100+((int)anzeigwertx)), (int)-anzeigwert/*
* der
* endpunkt
* der
* betrag
* anzeigt
*/);
// Schriftangabe für Anzeige
String s="Monat May, Startbeginn ...";
String s2="Kurs seit 10.04.2007 in EUR";
String s4="0 EUR";
g.setColor(Color.GREEN);
String sf=""+((int)krass);
g.drawString(sf, (100+((int)anzeigwertx)), 620);
String s3=testwert+" EUR";
g.drawString(s3, 2, (int)-anzeigwert);
g.setColor(Color.red);
g.drawString(s,630,570);
g.drawString(s2,120,20);
g.setColor(Color.WHITE);
String s5="50000 EUR";
String s6="100000 EUR";
g.drawString(s6,2,20);
g.drawString(s5,2,290);
g.drawString(s4,2,580);
String ss="0";
String sd="31";
String half="15";
g.drawString(ss,100,620);
g.drawString(sd,770,620);
g.drawString(half,435 , 620);
// Die Linien des Grafen
// x-Linie
g.drawLine(100,590/* unten links */,790,590/* unten rechts */);
// y-linie
g.drawLine(100,10/* oben links */,100,590/* unten links */);
// g.drawLine(20, 590, 20,600 );
for(int i=100 ; i<=790 ; i=i+20 ) {
g.drawLine(i, 590, i,600 );}
for(int i=20 ; i<=590 ; i=i+20 ) {
g.drawLine(100, i, 86,i );
}
// Grafhistoriendatei wird geschrieben
String x=""+(100+((int)anzeigwertx));
String y=""+((int)-anzeigwert);
String tag=""+((int)krass);
FileWriter f2;
try {
f2 = new FileWriter("ist.txt");
f2.write("\n"+x+" "+y+" "+tag);
f2.close();
} catch (IOException e) {
System.out.println("Fehler beim Erstellen der Datei");
}
}
}