# String [] in UTF8 formal Speichern



## Tis (22. September 2010)

Hallo ,

Ich hab die Aufgabe Exceldateien einzulesen und in Textdateien zu speichern und zwar in UTF8 format , Bis jetzt funktioniert alles nur habe ich kein plan wie ich das mit den UTF8 machen soll, hat einer vielleicht erfahrung mit sowas****


Gruß,


Tis


----------



## zer0 (22. September 2010)

Schau mal hier: http://www.tutorials.de/java/353570-iso-nach-utf-8-a.html


----------



## Tis (22. September 2010)

Danke dir aber das ist nicht wirklich was mir hilft


----------



## Elmu (22. September 2010)

Hiermit würdest du UTF8 im Darstellungsformat dezimal rausbekommen.


```
public class Test {
   
   public static void main(String[] args) {

      //Test String
      String a = "Ich bin ein String";
      
      byte[] utf8 = a.getBytes();
      
      for( int i = 0; i < a.length(); i++ ) {
         String kar = String.valueOf(utf8[i]);    
         System.out.println(kar);
      }

   }

}
```

Das ist jetzt nur ein kleines Beispiel.. du musst/solltest es natürlich nach deinem Wünschen und/oder gebrauch abwandeln.


----------



## Bratkartoffel (22. September 2010)

Hallo,

was hilft dir hier nicht weiter?
Ich denke die Zeile

```
byte[] utf8 = new String(latin1, "ISO-8859-1").getBytes("UTF-8");
```
sollte dein Problem eigentlich lösen.

Gruß
BK


----------



## Tis (22. September 2010)

Vielen dank erstmal  


```
byte[] utf8 = new String(latin1, "ISO-8859-1").getBytes("UTF-8");
```

Ich seh das diese zeile ein UTF8 string erwartet , jedoch will ich in einen verwandeln und nicht in einen kodieren, korrigiert mich wenn ich falsch liege

Gruß,
tis


----------



## Bratkartoffel (22. September 2010)

Hallo,

inwiefern erwartet diese Zeile einen UTF8-String? Du übergibst dem Konstruktor von String einen String im ISO-8859-1 Format (Variable "latin1") und er gibt dir ein byte[] mit der UTF8 kodierten Form des Strings zurück.
Diese kannst du dann über deinen  (z.B.) FileOutputString in die Datei schreiben.

Gruß
BK


----------



## Tis (22. September 2010)

Bratkartoffel hat gesagt.:


> Hallo,
> 
> inwiefern erwartet diese Zeile einen UTF8-String? Du übergibst dem Konstruktor von String einen String im ISO-8859-1 Format (Variable "latin1") und er gibt dir ein byte[] mit der UTF8 kodierten Form des Strings zurück.
> Diese kannst du dann über deinen  (z.B.) FileOutputString in die Datei schreiben.
> ...


 
verstehe,  weißt du wie ich in FileOutputStream den ein byte in eine Datei schreibe?


```
public class bytes {
public static void main (String[]args) throws IOException{
	
	
	byte[] utf8 = new String(latin1, "ISO-8859-1").getBytes("UTF-8");
	FileOutputStream fos = new FileOutputStream ("tefler.txt");
	fos.write(utf8);
	fos.close();
}
}
```

du meintest latin1 wäre ein string ? es ****t jedenfalls nicht wenn ich eine Variable latin1 string mache und was einfügen will

Gruß
tis


----------



## zer0 (22. September 2010)

Hast du den die Variable _latin1_ mit einem Wert gefüllt?


----------

