2012-05-13 12 views
0

私は読み込まれたテキストファイルを持っています。それは<.>の区切り文字を持っています。主題があり、3つの段落があります。 titlesection1section2section3、そして次の記事です。Javaがテキストファイルで読み込まれ、別の配列に分割されます

ArrayListがすべてのタイトルを持ち、ArrayList 2がすべてのセクション1情報を持つようにデータを保存するにはどうすればよいですか?私はこれらの配列を出力できるようにしたい。

例:
途中で大きな嵐。大嵐嵐嵐

上記の例について

結論に

静力学に関する

は、1つのレコードがどのように見えるかを示しています。

public void read() 
{ 
    try 
    { 
     FileReader fr = new FileReader(file_path); 
     BufferedReader br = new BufferedReader(fr); 
     String s = ""; 
     // keep going untill there is no input left and then exit   
     while((s = br.readLine()) != null) 
     { } 
     fr.close(); 
    } 
    catch (Exception e) 
    { 
     System.err.println("Error: read() " + e.getMessage()); 
    } 
} 

public static void main(String [] args) 
{ 
    Reader reader = new ResultsReader("C:/data.txt"); 
    reader.read(); 
    String output = ((ResultsReader)reader).getInput(); 
    String str = "title<.>section1<.>section2<.>"; 
    String data[] = str.split("<.>"); 
} 

データを別々のArrayListsに格納してトラバースする方法がわかりません。

+0

'data []'には何がありますか? –

答えて

1

アレイの作成に必要な大きさがわからないため、アレイを作成してその中にデータを入れることはできません。したがって、代わりにリストを使用して、ファイルの読み込みを完了した後で配列に変換してください:

List tilesList = new ArrayList<String>(); 
// etc. 

FileReader fr = new FileReader(file_path); 
BufferedReader br = new BufferedReader(fr); 
String s = null // I think this should be null, so that if there are no lines, 
       // you don't have problems with str.split(); 
while((s = br.readLine()) != null) { 
    String[] line = str.split("<.>"); 
    tilesList.add(line[1]); 
    // etc. 
} 
fr.close(); 

String[] tiles = tilesList.toArray(new String[tilesList.size()]); 
// etc. 
+0

私はarraylist私のミスを追加する必要があります – al23dev

関連する問題