Fabiansson
Cadet 3rd Year
- Registriert
- Jan. 2009
- Beiträge
- 56
Hallo Leute.. ich versuche im Moment in Java ein Programm zu schreiben, welches mir eine Textdatei einliest und dann nur die gewünschten Werte davon ausgibt.
Ich möchte dies in jeder Zeile einzeln machen und dann mit hilfe von Arrays auf die Werte zugreifen. Die Werte in einer Zeile sind mit einem Koma abgetrennt.
Nun aber das Problem:
Die erste Zeile funktioniert supper, jedoch bei der zweiten Zeile bekomme ich nur null's. Sie wird demnach nicht korrekt ausgelesen.
Ich habe schon viel versucht und gesucht aber zur Lösung bin ich leider bisher noch nicht gekommen.
Hier mal mein Code
Ich hoffe sehr, ihr könnt mir helfen. Besten Dank zum voraus.
Gruss Fabiansson
Ich möchte dies in jeder Zeile einzeln machen und dann mit hilfe von Arrays auf die Werte zugreifen. Die Werte in einer Zeile sind mit einem Koma abgetrennt.
Nun aber das Problem:
Die erste Zeile funktioniert supper, jedoch bei der zweiten Zeile bekomme ich nur null's. Sie wird demnach nicht korrekt ausgelesen.
Ich habe schon viel versucht und gesucht aber zur Lösung bin ich leider bisher noch nicht gekommen.
Hier mal mein Code
private void prufung()
{
String line = null;
char tempchar = 0;
int komas = 0;
String xkor [] = new String [10000];
String ykor [] = new String [10000];
String volk [] = new String [10000];
String dorfname [] = new String [10000];
String ew [] = new String [10000];
int linenumber = 0;
int stellen = 0;
try
{
BufferedReader br = new BufferedReader(new FileReader("map.txt"));
LineNumberReader lnreader = new LineNumberReader(br);
//trennt quasi Infos von Komas
while((line = lnreader.readLine()) != null)
{
for(int i = 0; i < line.length(); i++)
{
linenumber = lnreader.getLineNumber();
tempchar = line.charAt(i);
if(tempchar == ',') //unnütze Zeichen
{
stellen = 0;
komas++;
}
///////////XKoordinate auslesen
else if(tempchar != ',' && komas == 1)
{
if(stellen == 0)
{
xkor[linenumber] = String.valueOf(tempchar);
stellen++;
}
else
{
xkor[linenumber] += String.valueOf(tempchar);
}
}
/////////////YKoordinate auslesen
else if(tempchar != ',' && komas == 2)
{
if(stellen == 0)
{
ykor[linenumber] = String.valueOf(tempchar);
stellen++;
}
else
{
ykor[linenumber] += String.valueOf(tempchar);
}
}
////////////Volk auslesen
else if(tempchar != ',' && komas == 3) //nach 3tem Koma Volk
{
volk[linenumber] = String.valueOf(tempchar);
}
///////////Dorfname auslesen
else if(tempchar != ',' && komas == 5) //nach 5tem Koma Dorfname
{
if(stellen == 0)
{
dorfname[linenumber] = String.valueOf(tempchar);
stellen++;
}
else
{
dorfname[linenumber] += String.valueOf(tempchar);
}
}
////////////EW auslesen
else if(tempchar != ',' && komas == 10 && tempchar != ')' && tempchar != ';') //nach 10tem Koma EW
{
if(stellen == 0)
{
ew[linenumber] = String.valueOf(tempchar);
stellen++;
}
else
{
ew[linenumber] += String.valueOf(tempchar);
}
}
///////Alle anderen Zeichen
else
{
}
}
}
}
catch(Exception e)
{
System.out.println("FAIL!");
}
System.out.println("xkor:" + xkor [1]);
System.out.println("ykor:" + ykor [1]);
System.out.println("volk:" + volk [1]);
System.out.println("name:" + dorfname [1]);
System.out.println("ew:" + ew [1]);
System.out.println("xkor:" + xkor [2]);
System.out.println("ykor:" + ykor [2]);
System.out.println("volk:" + volk [2]);
System.out.println("name:" + dorfname [2]);
System.out.println("ew:" + ew [2]);
Ich hoffe sehr, ihr könnt mir helfen. Besten Dank zum voraus.
Gruss Fabiansson