2016-04-15 7 views
-4

Ich habe eine .TXT-Datei, die wie 43 78 63 73 99 .... aussieht, d. H. alle ihre Werte sind durch Leerzeichen getrennt. Ich möchte, dass jeder von ihnen in ein Array hinzugefügt werden, so dass a[0]=43 a[1]='78 a[2]=63 und so weiter. Wie kann ich dies in Java..Bitte erklärenInhalt der TXT-Datei in einem Array speichern

+0

Reine Code-Writing-Anfragen sind off-topic auf Stack Overflow - wir erwarten Fragen hier beziehen sich auf * spezifische * Programmierprobleme - aber wir werden Ihnen gerne helfen, es selbst zu schreiben! Sagen Sie uns [was Sie versucht haben] (http://stackoverflow.com/help/how-to-ask), und wo Sie stecken bleiben. Dies wird uns auch helfen, Ihre Frage besser zu beantworten. –

Antwort

0

Lesen Sie die Datei in eine Zeichenfolge. Dann verschüttet die Zeichenfolge auf dem Leerzeichen in einem Zeichenfolgenarray.

0

Nun, ich würde es tun, indem Sie die Textdatei in einen String zu speichern. (solange es nicht zu groß ist) Dann würde ich .split ("") verwenden, um es in einem Array zu speichern.

So:

String contents = "12 32 53 23 36 43"; 
//pretend this reads from file 

String[] a = contents.split(" "); 

nun das Array 'a' sollte die alle Werte darin gespeichert haben. Wenn das Array ein int sein soll, könnten Sie ein int-Array verwenden und Integer.toString() verwenden, um Datentypen zu konvertieren.

0
import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 
import java.util.ArrayList; 
import java.util.List; 

public class readTextToIntArray { 
public static void main(String... args) throws IOException { 
    BufferedReader reader=new BufferedReader(new FileReader("/Users/GoForce5500/Documents/num.txt")); 
    String content; 
    List<String> contentList=new ArrayList<String>(); 
    while((content=reader.readLine())!=null){ 
     for(String column:content.split(" ")) { 
      contentList.add(column); 
     } 
    } 
    int[] result=new int[contentList.size()]; 
    for(int x=0;x<contentList.size();x++){ 
     result[x]=Integer.parseInt(contentList.get(x)); 
    } 
} 
} 

Sie können dies verwenden.

+0

Wenn es Anfängern hilft, ist es in der Regel am besten, wenn Sie eine Erklärung bereitstellen, anstatt nur den kompilierenden Code zu veröffentlichen. – Signal

Verwandte Themen