tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
687
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    el_paso el_paso ist offline Mitglied
    Registriert seit
    Sep 2004
    Beiträge
    10
    hallo allerseit,

    ich versuche ein csv datei mit der Format

    Z11 Z12 Z13 Z14 Z15 Z16
    Z21 Z22 Z23 Z24 Z25 Z26
    . ..................................
    ....................................
    Zn1 Zn2 Zn3.............Zn6

    zu lesen und daraus bestimmte Spalten zu kopieren und in einem outputfile zu schreiben.

    dafür habe ich ein splitfunktion(mit switch() ) die mir helfen sollte mein stringbuffer wortweisse zu zerlegen...leider klapp es nur dür ein Zeile..ich komme irgendwie nicht es für den ganz datei zu tun ..bitte bitte Hilfe.

    Output file :

    Z11 Z13 Z16
    Z21 Z23 Z26
    . ..................
    ....................
    Zn1 Zn3..Zn6

    ps. vorschlag ein klein bzw pseudo-kode wäre cool .

    Danke im voraus.
     

  2. #2
    Avatar von squeaker
    squeaker squeaker ist offline Mitglied Platin
    Registriert seit
    Jun 2004
    Ort
    Würzburg
    Beiträge
    577
    was ist das Problem an Zeilenweise?
     

  3. #3
    elninio elninio ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    10
    Hi,

    ich unterstell dir mal du hast nen String-Array zeile[], wo alle Zeilen der Quelldatei drin stehen. Und ich geh auch davon aus, dass das Semikolon das Trennzeichen zwischen den Spalten ist. Ausserdem hast du nen String, in dem alle Selektierten Spalten stehen, also das, was du mit der Swich Funktion machst. Wenn du also die Spalten 1, 3 und 5 selektiert hast, sieht der String so aus:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    
    Class ... {
      private String selektierteSpalten;
     
    //Swich Funtkion....
      selektierteSpalten = "1,3,5";
    ...
    //ende Swich Funktion
    ..
     
    // Funktion die Output raussucht
    String outputString = ""; 
    for(int i=0; i<zeile.length; i++){
      String aktuelleZeile = zeile[i];
      StringtTokenizer zeilenTokenizer = new StringTokenizer(aktuelleZeile,";"); 
      int k = 0;
      while(zeilenTokenizer.hasMoreTokens()){
      k++;  
      if(selektierteSpalten.indexOf(""+k>=0){ 
        outputString += zeilenTokenizer.nextToken().toString;
      } else{
        zeilenBuffer.nextToken();
      }
    }
    ... // hier den OutputString in die neue Datei schreiben

    Sorry hab grade keine IDE hier, kann das also nicht testen, aber so sollte es funktionieren. Falls du es so macht, brauchst du sogar in deiner Swich-Funktion nochnichtmal ein Swich Allerdings funktioniert das nur solange du nicht mehr als 9 Spalten in einer Zeile hast, da indexOf sonst murks macht. Weil wenn du prüfst, ob Spalte 1 selektiert ist, wird er ja sagen, wenn er ne 11, 12 oder 21 findet...
    Geändert von elninio (04.10.04 um 04:13 Uhr)
     

  4. #4
    el_paso el_paso ist offline Mitglied
    Registriert seit
    Sep 2004
    Beiträge
    10
    Hallo ,
    wollte mich nur, selbst wenn so spät beim alle für die mehrere Hilfe bedanken.
    Cool waren die Tipps habt ihr gemacht.
    Grüsse.
    el_paso.
     

Ähnliche Themen

  1. Problem beim String spliten
    Von Germu im Forum Java
    Antworten: 5
    Letzter Beitrag: 16.11.06, 16:45
  2. Text Spliten
    Von chinese1 im Forum PHP
    Antworten: 5
    Letzter Beitrag: 22.06.05, 14:00
  3. String spliten
    Von roemer im Forum .NET Archiv
    Antworten: 12
    Letzter Beitrag: 10.01.05, 19:35
  4. String spliten
    Von roemer im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 08.01.05, 22:17
  5. File beim Upload spliten
    Von masa im Forum PHP
    Antworten: 5
    Letzter Beitrag: 18.10.04, 15:59