webForumDet fria alternativet

Dela in array

6 svar · 342 visningar · startad av AG

AGMedlem sedan mars 20001 266 inlägg
#1

Efter att ha fått två av två problem lösta här idag så jag försöker jag nu med ett tredje.
Har efter mycket om och men lyckats omvandla en string till en array. Det jag nu tänkte göra är att göra en ny array av alla rader i en fil, dessa känns igen med \n.
Har skummat runt på java.sun.com men blir ej klokare.

Andreas

ViktorMedlem sedan aug. 20021 752 inlägg
#2

Om du använder en BufferedReader så kan du läsa filen "line by line". Förstår inte riktigt vad du vill göra med din Array så mer kan jag inte säga :)

Det här passar väll bäst i vanliga Java forumet? :)

/Viktor

AGMedlem sedan mars 20001 266 inlägg
#3

Saken är den att jag har en string med massor av rader i en txtfil. Varje sådan rad vill jag nu göra om till en array, för att sedan bearbeta och sätta in i databas. Allt ligger för närvarande i en array. Så det får nu bi en ny array per \n.
Andreas

SPiNMedlem sedan mars 20007 896 inlägg
#4

Du vill alltså få varje rad i textfilen till en plats i arrayen?

Vector vector = new Vector();
try {
     BufferedReader bufferedReader = new BufferedReader( new FileReader( "dinFil.txt" ) );
     String string = "";

     while( ( string = bufferedReader.readLine() ) != null )
          vector.addElement( string );
}
catch( IOException e ) {
     // Kunde inte läsa
}
catch( FileNotFoundException e ) {
     // Filen hittades inte
}

Object[] arrayen = vector.toArray();
// Nu har du dina element i arrayen 'arrayen'

Kom ihåg att casta varje element från arrayen 'arrayen' till String, när du plockar ut dem.

AGMedlem sedan mars 20001 266 inlägg
#5

Tackar
Om man saknar txtfilen, men ändå har stringen uppdelad i mängder av rader, hur skulle man då skriva?

Andreas

ViktorMedlem sedan aug. 20021 752 inlägg
#6

Det borde bli såhär,

Vector vector = new Vector();
try {
     BufferedReader bufferedReader = new BufferedReader( new StringReader( YOUR_STRING ) );
     String string = "";

     while( ( string = bufferedReader.readLine() ) != null )
          vector.addElement( string );
}
catch( IOException e ) {
     // Kunde inte läsa
}
catch( FileNotFoundException e ) {
     // Filen hittades inte
}

Object[] arrayen = vector.toArray();
// Nu har du dina element i arrayen 'arrayen'

Byt ut FileReader mot en StringReader

/Viktor

AGMedlem sedan mars 20001 266 inlägg
#7

Kalas, fungerar nu perfekt.
Steg två blir nu att dela upp varje array i mindre, kul :)

Andreas

254 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
122 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)