# Umwandlung von Integer in Char



## Java Light (10. Aug 2006)

Hallo zusammen, 

eigentlich eine ganz triviale Angelegenheit und dennoch anscheinend zu kompliziert für mich.
Ich möchte ein cast vornehmen und zwar von einem Integer in ein Char. Dies funzt nur leider nicht. Hier ist mein Code:


```
while ((c = f.read()) != 44) {
		        					   



		        					   
		        					   
		        					   (char)c; <---Diese Umwandlung funzt nicht`!!!
		        					   ersatzarraynmo[1] = c;
		        					   ersatzarraynmo[0] = ersatzarraynmo[0] + ersatzarraynmo[1]; 
		        					   System.out.println(ersatzarraynmo[1]);
		        				   }
		        				   arraynmo[0 + zaehlernmoarray] = ersatzarraynmo[0];
		        				   ++zaehlernmoarray;
		        			   }
```

Was mache ich falsch? 

Besten Dank für Eure Hilfe...

JavaLight


----------



## SlaterB (10. Aug 2006)

du kannst eine int-Variable nicht umbiegen, ein int bleibt immer ein int,
aber du kannst eine neue Variable vom Typ char definieren, dafür verwendet man die casts:


```
int i = 65;
char c = (char) i;
System.out.println("i: "+i+" -> c: "+c);
```

ersatzarraynmo[1] = (char) c; funktioniert vielleicht falls ersatzarraynmo ein char-Array ist,
wieso aber addierst du dann chars in der nächsten Zeile, macht das Sinn?


----------



## Java Light (10. Aug 2006)

Ok, vielleicht mache ich etwas falsch. Ich lese ein String mit Zeichen aus. Jedes Zeichen lese ich einzeln aus. Ich möchte nun die einzelnen Zeichen wiederum zu einem String zusammenbauen. 
Die einzelnen Strings müssen aber jeweils nur von Komma zu Komma gehen. Ich habe nun gedacht ich löse dies mit Arrays und lasse dann die Arrays die einzelnen Zeichen zu einem String zusammenbauen. 
Anscheinend funzt dies aber nicht???

Wie soll ich das nur machen?

Besten Dank für Eure Hilfe...

Euer JavaLight


----------



## Java Light (10. Aug 2006)

Hallo zusammen

Ich habe nun herausgefunden, das man Chars zu einem String mit Hilfe von StringBuffer.append() erstellen kann. Leider habe ich keine Ahnung wie genau ich diesen Befehl nutzen muss. Kann mir da jemand helfen?

Besten Dank


----------



## The_S (10. Aug 2006)

Ich versteh deni komplettes prob net, sry. Was willst du genau machen? Ein char in einen String umwandeln? Ein Char-Array in ein String umwandeln? Ein int in ein char umwandlen (ASCII oder die zahl ansich)? Ein int in ein String casten? ...


----------



## Java Light (10. Aug 2006)

Ok, sry. Ist ein bisschen viel durcheinandergeraten. Von Anfang an.
Ich habe ein String und der lautet in etwa so:

"G44","BG-SS-000833",21,20060808," ",2198033,"N",732678,"A"

ich lese nun ein Zeichen nach dem anderen aus, und möchte anschliessend die einzelnen Zeichen (Chars) zu einem String zusammenbauen. Die Strings möchte ich anschliessend in einem Array einzeln speichern. 


```
while ((c = f.read()) != 44) {
		        					   
		        					   //Einzelne Chars zu String zusammenbauen
		        					   char i = (char) c;
		        					   StringBuffer append(i);
		        					   StringBuffer.toString();
		        					   
		        					   System.out.println(ersatzarraynmo[1]);
		        				   }
```

Ich möchte nun wissen ob mir jemand sagen kann, wie ich das genau machen soll? Besten Dank für Eure Hilfe...


----------



## SlaterB (10. Aug 2006)

@Java_Light

was ist denn wenn du mal ein Zeichen in einem String suchen, eine Datei einlesen oder eine GUI starten willst?
willst du für jedes der tausenden Probleme die dir noch begegner werden hier eine Frage stellen? 

so kommst du aber nicht sehr weit, es gibt auch Tutorials, Klassenbibliotheken!

--------

also chars in einen StringBuffer (besser StringBuilder in Java 1.5, sonst einfach StringBuffer) zu stecken scheint nicht weiter schwierig:


```
StringBuilder b = new StringBuilder();
for (int i = 65; i < 70; i++) {
     char c = (char) i;
      b.append(c);
}
System.out.println(b.toString());
```

alles andere, gerade String nach Komma zu trennen usw. musst du schon bisschen genauer beschreiben, 
am besten mit Code und deinen genauen Schwierigkeiten,

Tipp: die Klasse StringTokenizer kann einen langen String aufteilen, z.B. bei jedem Komma trennen,

Tipp: wenn du gerade versuchst mit chars u arbeiten oder Strings aufzutrennen, dann benutze einen TestString x = "Huhu, Abc, Dada",
und nicht eine eingelesene Datei,
wenn du hier nämlich Code mit der eingelesen Datei postest ist das aufwendig lokal nachzubauen,

was anderes ist es natürlich, wenn dein Problem mit dem Einlesen zu tun hat (da kommen die Chars ja im Stream an, nicht direkt im Array oder String),
dann natürlich den Datei-Code benutzen,

aber 'Strings nach Komma trennen' klingt zunächst mal wenig nach Datei-Operationen

--------
edit: dein letzten Post beim Schreiben noch nicht gesehen, 
wie gesagt: sagen was nicht geht, was kommt raus, was soll rauskommen,
'wie mache ich das' verstehe ich nicht,
ist der String da wirklich der der vorliegt? also Anführungszeichen im String selber? sieht ganz schön konfus aus


----------



## Java Light (10. Aug 2006)

Danke! Das mit deinem StringTokenizer war eine sehr gute Idee! 
Eine kleine Frage, wie würdest Du mir vorschlagen Java zu lernen? 
Ich brauche zum Teil sehr spezifisches Wissen. Programmiert mit anderen Sprachen habe ich schon. Aber Java ist das mächtigste und somit auch das spezifischte was ich kenne. Deshalb muss ich sehr oft nachfragen. Aber ich meine, ich kann dabei ja nur lernen, oder wie siehst Du das?

Danke Euer

JavaLight


----------



## SlaterB (10. Aug 2006)

nun ja, ich sehe hier zum Glück so gut wie keinen der andauern die einfachsten Fragen stellt, wäre ja auch zu aufwendig

insofern wohl gar nicht erst ein Problem,
beim StringBuffer hätte aber z.B. ein Blick in die API zur Bedienung geholfen (wie sonst die Bedienung lernen wenn nicht mit der Anleitung?) 

http://java.sun.com/j2se/1.5.0/docs/api/

neben der grauen Theorie noch einmal ein Tutorial für die gängigsten Fälle durcharbeiten:
http://www.galileocomputing.de/openbook/javainsel5/
mehr kann man wohl nicht tun,


----------

