Excel tschechischer Zeichensatz

  • Hallo,
    hab folgendes problem, bei dem ich einfach nicht weiter komm. Ich lese aus einem excel file daten ein, funktioniert auch alles wunderbar. Nur hab ich jz in dieser excel datei eine spalte mit tschechischen wörtern in denen z.b.: Ú vorkommt, also Buchstaben mit Hatschek.
    Zum excel file einlesen verwende ich jexcel.
    Habt ihr vl eine ahnung oder einen tipp was ich anders machen muss, damit wenn ich den string wieder auf der konsole oder nachher in einer anderen datei abspeichere die hatscheks nicht verloren gehen, weil daweil hab ich dann lauter ? dort stehen??!?

    Lg
    Danke

  • Wird ne Spielerei mit dem Zeichensatz sein, versuch UTF8 zu nutzen, soweit ich dass seh in der Doku bietet Workbook.getWorkbook() eine überladene Variante mit Datei und WorkbookSettings; dort kannst du mit setEncoding etwas angeben. Schreiben analog.

    edit: Dann eben UTF-16LE.

    Einmal editiert, zuletzt von polymorph10 (6. Februar 2011 um 15:46)

  • danke schon mal, aber das mit dem setEncoding hab ich eh schon verwendet gehabt ;)
    mein Problem dürfte dann aber irgendwie daran liegen, dass ich die Werte der Tabellen in einer ArrayList<String> speichere.
    Hab folgenden Code im inet gefunden, nur wie münz ich dass jz auf mein excel file um.

    PHP
    File users = new File("d:\\ad.csv");
    FileInputStream stream = new FileInputStream (users );
    InputStreamReader reader = new InputStreamReader (stream, "UTF-16LE");
    BufferedReader bufferedReader = new BufferedReader (reader );
    String line = null;
    
    while ((line = bufferedReader.readLine()) != null)
    {
       System.out.println(line);
    }

    Ich lese die Werte aus den Spalten so ein

    PHP
    ArrayList<String> temp = new ArrayList<String>();
    
    
    for (int i = from; i < till; i++) {
      Cell c = sheet.getCell(row, i);
      temp.add(c.getContents());
    }
  • warum konvertierst du nicht einfach die csv-datei in ein anderes format, mit dem die library umgehen kann, utf-8 z.b.
    der ursprüngliche post war etwas missverständlich, da war die rede von einem "excel-file" - normalerweise gleichbedeutend mit ".xls". nachdems hier um ein csv dokument geht, sollte das kein problem sein.

    "All through my life I've had this strange unaccountable feeling that something was going on in the world, something big, even sinister, and no one would tell me what it was."
    "No," said the old man, "that's just perfectly normal paranoia. Everyone in the Universe has that."

    &#128513;&#128514;&#128515;&#128516;&#128517;&#128518;&#128519;&#128520;&#128521;&#128522;&#128523;&#128524;&#128525;&#128526;&#128527;&#128528;&#128530;&#128531;&#128532;&#128534;&#128536;&#128538;&#128540;&#128542;&#128544;&#128545;&#128546;&#128547;&#128549;&#128552;&#128553;&#128554;&#128555;&#128557;&#128560;&#128561;&#128562;&#128563;&#128565;&#128566;&#128567;

  • nein, das hast du falsch verstanden, bei mir handelt es sich um eine .xls Datei.
    Den Programmteil mit der .csv Datei hab ich nur im Internet gefunden zum Thema Zeichensatz UTF-16LE

  • ArrayList ist kein Problem, ist völlig belanglos wie dus ablegst.

    Ich habs mal selbst probiert (mit tschechischen Zeichen) und folgendes

    macht eigentlich keine Probleme mit Excel 2007. Man beachte die standardmäßige Nutzung von CP1252 (zumindest hierzulande) aka Westeuropäisch (geht aber genausogut mit UTF-8, etc. via WorkbookSettings). Schau einfach mal nach was Sache ist. Kannst das Problem auch auf Lesen oder Schreiben eingrenzen indem du beim Debuggen nachschaust, ob die Strings korrekt formatiert sind (ohne Fragezeichen).

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    5 Mal editiert, zuletzt von polymorph10 (8. Februar 2011 um 23:49)

  • Problem besteht schon beim Einlesen.
    Hab dir einmal als Screenshot die Tabelle des ExcelFiles, meinen Aufruf und das Ergebnis des Debug-Outputs angehängt.
    Lg

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!