Сохранить файл EXCEL в формате CSV (значения, разделенные запятыми). Это позволит легко читать и анализировать с помощью довольно простого использования StringTokenizer.
Используйте MySQL (или SQLite в зависимости от ваших потребностей) и JDBC для загрузки данных в базу данных.
Вот класс CSVEnumeration, который я разработал:
package com.aepryus.util;
import java.util.*;
public class CSVEnumeration implements Enumeration {
private List<String> tokens = new Vector<String>();
private int index=0;
public CSVEnumeration (String line) {
for (int i=0;i<line.length();i++) {
StringBuffer sb = new StringBuffer();
if (line.charAt(i) != '"') {
while (i < line.length() && line.charAt(i) != ',') {
sb.append(line.charAt(i));
i++;
}
tokens.add(sb.toString());
} else {
i++;
while(line.charAt(i) != '"') {
sb.append(line.charAt(i));
i++;
}
i++;
tokens.add(sb.toString());
}
}
}
// Enumeration =================================================================
public boolean hasMoreElements () {
return index < tokens.size();
}
public Object nextElement () {
return tokens.get(index++);
}
}
Если вы разбиваете строки файла CSV, используя split, а затем подаете их одну за другой в класс CSVEnumeration, вы можете затем пройти по полям. Или вот некоторый код, который я лежу без дела, который использует StringTokenizer для разбора строк. CSV - это строка, которая содержит все содержимое файла.
StringTokenizer lines = new StringTokenizer(csv,"\n\r");
lines.nextToken();
while (lines.hasMoreElements()) {
String line = lines.nextToken();
Enumeration e = new CSVEnumeration(line);
for (int i=0;e.hasMoreElements();i++) {
String token = (String)e.nextElement();
switch (i) {
case 0:/* do stuff */;break;
}
}
}