2012-07-05 28 views
7
package jexcel.jxl.nimit; 

    import java.awt.Label; 
    import java.io.File; 
    import java.io.IOException; 

    import jxl.Cell; 
    import jxl.CellType; 
    import jxl.LabelCell; 
    import jxl.NumberCell; 
    import jxl.Sheet; 
    import jxl.Workbook; 
    import jxl.read.biff.BiffException; 
    import jxl.write.WritableCell; 
    import jxl.write.WritableSheet; 
    import jxl.write.WritableWorkbook; 
    import jxl.write.WriteException; 
    import jxl.write.biff.RowsExceededException; 

    public class ExcelJxl { 

    /** 
    * @param args 
    * @throws IOException 
    * @throws BiffException 
    * @throws WriteException 
    * @throws RowsExceededException 
    */ 
    public static void main(String[] args) throws BiffException, IOException, RowsExceededException, WriteException { 
     // TODO Auto-generated method stub 
      ExcelJxl.WriteFile("D:\nimit.xls"); 
    } 

    public static void WriteFile(String path) throws BiffException, IOException, RowsExceededException, WriteException{ 

    Workbook wb=Workbook.getWorkbook(new File(path)); 

    WritableWorkbook copy=Workbook.createWorkbook(new File("D:\temp.xls"),wb); 
    WritableSheet sheet = copy.getSheet(1); 
    WritableCell cell = sheet.getWritableCell(0,0); 
    String S="nimit"; 
    if (cell.getType() == CellType.LABEL) 
    { 
     LabelCell l = (LabelCell) cell; 
     l.setString(S); 
    } 
    copy.write(); 
    copy.close(); 
    wb.close(); 

    } 
    } 

Tôi đã chỉnh sửa chương trình của tôi, và bây giờ nó nói rằng setString() Phương pháp setString (String) là undefined cho các loại LabelCell tôi đọc tài liệu, có một phương pháp setString trong loại LabelCell.Viết cho một Excel hiện tập

+2

Không có định nghĩa về phương pháp 'ghi' trong Lớp sổ làm việc. Xem này: http://jexcelapi.sourceforge.net/resources/javadocs/2_6_10/docs/jxl/Workbook.html – Sabbath

+1

Dưới đây là một số mã: http://www.vogella.com/articles/JavaExcel/article.html – Sabbath

+1

Nhưng ví dụ này có nó. [Link] (http://www.andykhan.com/jexcelapi/tutorial.html) để viết thành một tệp excel. –

Trả lời

14

LabelCell chỉ là một giao diện chỉ với một phương pháp tức là getString() bạn có thể tìm hiểu thêm về nó here

Bạn nên sử dụng jxl.write.Label để thay thế.
gì bạn biết chính xác cần làm là như sau
Bạn nên nhập khẩu các tập tin sau đây

import jxl.write.Label 

Sau đó, sau đây là đoạn code để thêm một tế bào ở vị trí mong muốn đến một excel nộp

Workbook existingWorkbook = Workbook.getWorkbook(new File(fileToEdit.getAbsolutePath())); 
WritableWorkbook workbookCopy = Workbook.createWorkbook(new File("output.xls"), existingWorkbook); 
WritableSheet sheetToEdit = workbookCopy.getSheet(sheetName); 
WritableCell cell; 
Label l = new Label(currentColumn, currentRow, value); 
cell = (WritableCell) l; 
sheetToEdit.addCell(cell); 
workbookCopy.write(); 
workbookCopy.close(); 
existingWorkbook.close(); 

currentColumncurrentRow xác định chỉ mục và giá trị chứa Chuỗi được đặt trong ô đó.

Hy vọng điều này sẽ giúp

+0

Làm việc cho tôi (Y) –

Các vấn đề liên quan