jExcel poiを使用して、EclipseでExcelファイルを作成しようとしています。すべて問題なく、エラーもなく、ファイルも作成されますが、サイズが 0b で開くことができません。タブレットからコードを実行する USB にファイルを取得することができました。PC でファイルを開くと、「開こうとしているファイルは、ファイル拡張子で指定された形式とは異なります」と表示されます。 .ファイルを開く前に、ファイルが破損しておらず、信頼できるソースからのものであることを確認してください。」次に、開くかどうか尋ねられます。「はい」と言うと、新しい空の Excel ファイルが開きます。Javaで作成したファイルではありません。ここに私のコードがあります:
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Random generator = new Random();
int n = 10000;
n = generator.nextInt(n);
try {
WritableWorkbook wb = createWorkbook("Busotina "+n+".xls");
WritableSheet sheet = createSheet(wb, "Prvi",0);
writeCell(0, 0, "poz", true, sheet);
writeCell(2, 0, "poz", true, sheet);
writeCell(1, 1, "poz", true, sheet);
writeCell(2, 3, "poz", true, sheet);
} catch (Exception e) {
e.printStackTrace();
}
}
public WritableWorkbook createWorkbook(String fileName) throws WriteException{
WorkbookSettings wbSettings = new WorkbookSettings();
wbSettings.setUseTemporaryFileDuringWrite(true);
File sd = Environment.getExternalStorageDirectory();
File dir = new File(sd.getAbsolutePath() + "/JExcelTest");
dir.mkdirs();
File wbfile = new File (dir, fileName);
WritableWorkbook wb = null;
try {
wb=Workbook.createWorkbook(wbfile, wbSettings);
wb.write();
wb.close();
} catch (IOException e) {
e.printStackTrace();
}
return wb;
}
public WritableSheet createSheet(WritableWorkbook wb, String sheetName, int sheetIndex){
return wb.createSheet(sheetName,sheetIndex);
}
public void writeCell(int columnPosition, int rowPosition,String contents, boolean
headerCell, WritableSheet sheet) throws WriteException{
Label newCell = new Label (columnPosition,rowPosition,contents);
if(headerCell){
WritableFont headerFont = new WritableFont(WritableFont.ARIAL,10,WritableFont.BOLD);
WritableCellFormat headerFormat = new WritableCellFormat(headerFont);
headerFormat.setAlignment(Alignment.CENTRE);
newCell.setCellFormat(headerFormat);
}
sheet.addCell(newCell);
}
}
それで、ディレクトリを作成し、ファイルを必要とする理由を知っている人はいますか?ファイルは0.00Bの大きさで、開いたり、電子メールなどの添付ファイルに入れたりできません。
前もって感謝します !