2017-03-25 12 views

答えて

0

どのAPIを使用していますか? 私はApache POIを使用することをお勧めします。これは、Excelファイルを処理するための最も一般的なAPIの1つです。

は、このコードを使用してみてください、私に動作します:

package lib; 

import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileOutputStream; 
import java.io.IOException; 

import org.apache.poi.hssf.usermodel.HSSFSheet; 
import org.apache.poi.hssf.usermodel.HSSFWorkbook; 

class WriteExcelConfig { 

    public static void main(String[] args) throws IOException { 

     String path = "database/data.xls"; 
     FileInputStream fis = new FileInputStream(new File(path)); 

     HSSFWorkbook wb = new HSSFWorkbook(fis); 

     HSSFSheet sheet = wb.getSheetAt(0); 

     sheet.getRow(0).createCell(0).setCellValue("Test Val"); 

     FileOutputStream fos = new FileOutputStream(new File(path)); 
     wb.write(fos); 

     wb.close(); 
     fis.close(); 
     fos.close(); 
    } 
} 

をExcel 97-2003形式約.XLSファイルを、言及しているので、上記のコードは動作します。あなたは新しいフォーマットであるの.xlsxを使用する予定の場合は、以下のコードを使用します

package lib; 

import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileOutputStream; 
import java.io.IOException; 

import org.apache.poi.xssf.usermodel.XSSFSheet; 
import org.apache.poi.xssf.usermodel.XSSFWorkbook; 

class WriteExcelConfig { 

    public static void main(String[] args) throws IOException { 

     String path = "database/data.xlsx"; 
     FileInputStream fis = new FileInputStream(new File(path)); 

     XSSFWorkbook wb = new XSSFWorkbook(fis); 

     XSSFSheet sheet = wb.getSheetAt(0); 

     sheet.getRow(0).createCell(0).setCellValue("Test Val"); 

     FileOutputStream fos = new FileOutputStream(new File(path)); 
     wb.write(fos); 

     wb.close(); 
     fis.close(); 
     fos.close(); 
    } 
} 
関連する問題