2016-12-05 6 views
0

コードを10個生成しました。これらの結果をExcelシートの1つの列にエクスポートする必要があります。ただし、コードは最後の10行目の最後の結果のみを表示します。私は同じ列にR [I]を取得する必要がどこjlxを使ってJavaの同じExcelシートにデータのループを書き込む方法は?

タラはあなたが繰り返し新しいワークシートを作成し、それを持つ以前のファイルを上書きしている「ラベルレコード」の下

import java.io.File; 
import java.io.IOException; 
import jxl.Cell; 
import jxl.Sheet; 
import jxl.Workbook; 
import jxl.read.biff.BiffException; 
import jxl.write.Label; 
import jxl.write.Number; 
import jxl.write.WritableSheet; 
import jxl.write.WritableWorkbook; 
import jxl.write.WriteException; 

public class GetResults{ 
public static void main(String[] args) throws BiffException, IOException, WriteException{ 
    int [] R = {1,2,3,4,5,6,7,8,9,10}; 
    for(int i=0; i<10; i++){ 
    WritableWorkbook wworkbook; 
    wworkbook = Workbook.createWorkbook(new File("output.xls")); 
    WritableSheet wsheet = wworkbook.createSheet("First Sheet", 0); 
    Label label = new Label(0, 2, "A label record"); 
    wsheet.addCell(label); 
    Number number = new Number(0, 3+i, R[i]); 
    wsheet.addCell(number); 
    wworkbook.write(); 
    wworkbook.close(); 
    } 
} 
} 

答えて

1

を下に示されています。結果として、最後のループ反復からの結果だけが生き残ります。

ワークシートとファイルの作成をループ外に移動します。各ループの反復では、同じ単一シートにセルを追加するだけです。

適切なインデントがこれをより明白にしたかもしれません。

+0

私はこのようにしてクラスをコンパイルしています。私はたくさんの操作の後にそれを呼び出します。このため私はループから抜け出せません。ループ内にワークシートを保持する考えはありますか? – John

+0

ループ内にワークシートを作成したくない場合。ループの前に適切な場所を見つける必要があります。すでに作成されているパラメータとしてワークシートをループしているメソッドに渡したいとします。 – Thilo

関連する問題