Ho una tabella in un foglio excel. I valori sono 5, che si ripetono riga per riga. Il foglio excel l'ho trasformato in una tabella html e nell'intestazione sono andato a creare una checkbox
con k inizializzato a zero. Lo uso per capire nella servlet successiva quali sono le colonne selezionate.
Seleziono un determinato numero di colonne e, attraverso un form, vado nella successiva servlet per analizzare i dati all'interno delle colonne selezionate e non.
Facendo in questo modo
Ad occhio mi sembrava giusta, ma quando vado a vedere l'out.println a video i valori del primo if
sono giusti.
Quelli del 2nd if sono completamenti sballati.
Ho fatto una prova con una tabella con 50colonne e ho selezionato 2 colonne. I valori delle 2 colonne sono giusti, quelle delle colonne non selezionate sono sbagliati.
Dove sbaglio?!
Noto che se seleziono più colonne, l'errore incrementa.
Help me plssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
Se non è chiaro, ditemi dove non lo è. Cosi cercherò di spiegarmi meglio
Codice:
<input type=\"checkbox\" name=\"intestazione\" value='"+k+"' checked=\"yes\" >
con k inizializzato a zero. Lo uso per capire nella servlet successiva quali sono le colonne selezionate.
Seleziono un determinato numero di colonne e, attraverso un form, vado nella successiva servlet per analizzare i dati all'interno delle colonne selezionate e non.
Facendo in questo modo
Codice:
String check[] = request.getParameterValues("intestazione"); // qui trovo le colonne selezionate
try {
String cartella="C://Documents and Settings//user//Documenti//NetBeansProjects//prog//build//web//";
String filePath = cartella + nome;
FileInputStream fs = new FileInputStream(new File(filePath));
WorkbookSettings ws = null;
Workbook workbook = null;
Sheet s = null;
Cell rowData[] = null;
double rowCount = 0.0;
int columnCount = 0;
int totalSheets = 0;
ws = new WorkbookSettings();
workbook = Workbook.getWorkbook(fs, ws);
totalSheets = workbook.getNumberOfSheets();
s = workbook.getSheet(0);
columnCount=s.getColumns();
rowCount = s.getRows();
for (int i = 1; i < rowCount; i++) {
rowData = s.getRow(i);
if (rowData.length > 1) {
int p=0;
for (int j = 0; j < columnCount; j++) {
p++;
for (int l=0; l<check.length;l++){
if(Integer.parseInt(check[l]) == p){ // Vuol dire che ho una cella della Colonna selezionata
D.Conta(rowData[j].getContents());
}
else //ho una colonna non selezionata
H.Conta(rowData[j].getContents());
}
}
}
out.println("hAA "+ H.getA() );
out.println("hCC "+ H.getC() );
out.println("hGG "+ H.getG() );
out.println("hTT "+ H.getT() );
out.println("hCT "+ H.getCT() ); out.println("<br>");out.println("<br>");
out.println(" dAA "+ D.getA() );
out.println(" dCC "+ D.getC() );
out.println(" dGG "+ D.getG() );
out.println(" dTT "+ D.getT() );
out.println(" dCT "+ D.getCT() ); out.println("<br>");out.println("<br>");
H.Pulizia();D.Pulizia();
}
} finally {
out.close();
}
Ad occhio mi sembrava giusta, ma quando vado a vedere l'out.println a video i valori del primo if
Codice:
if(Integer.parseInt(check[l]) == p)
sono giusti.
Quelli del 2nd if sono completamenti sballati.
Ho fatto una prova con una tabella con 50colonne e ho selezionato 2 colonne. I valori delle 2 colonne sono giusti, quelle delle colonne non selezionate sono sbagliati.
Dove sbaglio?!
Noto che se seleziono più colonne, l'errore incrementa.
Help me plssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
Se non è chiaro, ditemi dove non lo è. Cosi cercherò di spiegarmi meglio