Originariamente inviato da Andrea1979
se mi dai una mezz'ora vedo che posso fare. Poi l'api te la scarichi tu. Devo consegnare una cosa, poi ti scrivo un pezzo di codice.
EDIT
Apre un file excel, lo legge per riga e colonna: se trova una cella vuota salta alla riga successiva e si ferma se la prima cella di una riga è vuota. Il tutto viene messo, riga a riga, in un file di testo.codice:import jxl.*; import java.io.*; public class ReadToText { public static void main (String[] args) throws Exception { String buff = ""; //apro il file Workbook workbook = Workbook.getWorkbook(new File("C:/Documents and Settings/Andrea/Desktop/demofile.xls")); //prendo il primo foglio Sheet sheet = workbook.getSheet(0); boolean flag1 = true; boolean flag2 = true; int riga = 0; Cell currentCell; while (flag1) { //leggo per righe int cella = 0; while (flag2) { //leggo le celle currentCell = sheet.getCell(cella, riga); flag2 = currentCell.getContents()== "" ? false : true; buff += currentCell.getContents(); cella++; } buff += "\n"; cella = 0; riga++; flag2 = true; currentCell = sheet.getCell(cella, riga); flag1 = currentCell.getContents() == "" ? false : true; } BufferedWriter br = new BufferedWriter(new FileWriter("C:/Documents and Settings/Andrea/Desktop/EXCEL.TXT")); br.write(buff); br.flush(); br.close(); } }
Salve a tutti ho un problema con questo codice che mi genera un eccezione precisamente:
cioè mi legge la prima riga del file.xls che è di 5 colonne e poi esce....lo so perchè ho messo una stampa a video nel mezzo dei due cicli while....codice:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 at jxl.read.biff.SheetImpl.getCell(SheetImpl.java:354)
il compilatore mi segna errore su questa riga:
se qualcuno può darmi qualche chiarimento in proposito gliene sarei grato...anche perchè il codice mi sembra corretto e non capisco perchè generi l'eccezione.codice:while (flag2) { //leggo le celle currentCell = sheet.getCell(cella, riga);![]()

Rispondi quotando