我用了JExcel
API導入數據的從Excel,使用JExcel,我寫了下面的程序:在Android中從Excel導入數據需要幫助嗎?
public class ReadExcel {
private String inputFile;
public void setInputFile(String inputFile) {
this.inputFile = inputFile;
}
public void read() throws IOException {
File inputWorkbook = new File(inputFile);
File parent_dir = inputWorkbook.getParentFile();
Workbook w;
try {
System.out.println("Parent dir"+parent_dir);
if(parent_dir.exists() == true){
System.out.println("Pardent_dir failed"+"1");
}
else
{
System.out.println("Pardent _ dir not failed"+"2");
}
if(inputWorkbook.exists()== true)
{
System.out.println("File Exists");
}
else
{
System.out.println("File NOt Exists");
System.out.println("Path "+inputWorkbook.getAbsoluteFile());
}
w = Workbook.getWorkbook(inputWorkbook);
// Get the first sheet
Sheet sheet = w.getSheet(0);
// Loop over first 10 column and lines
for (int j = 0; j < sheet.getColumns(); j++) {
for (int i = 0; i < sheet.getRows(); i++) {
Cell cell = sheet.getCell(j, i);
CellType type = cell.getType();
if (cell.getType() == CellType.LABEL) {
System.out.println("I got a label "
+ cell.getContents());
}
if (cell.getType() == CellType.NUMBER) {
System.out.println("I got a number "
+ cell.getContents());
}
}
}
} catch (BiffException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws IOException {
ReadExcel test = new ReadExcel();
test.setInputFile("c:/temp/Book2.xls");
test.read();
}
}
它工作正常,但是當我已經在Android中使用它,我已經得到了以下異常
03-18 16:33:31.225: INFO/System.out的(8693):家長 DIRC:/溫度03-18 16:33:31.225: INFO/System.out的(8693): Pardent _ dir not failed2 03-18 16:33:31.235: INFO/System.out(8693) :File NOt Exists 03-18 16:33:31.235: INFO/System.out(8693):Path /c:/temp/Book2.xls 03-18 16:33:31.245: WARN/System.err (8693): java.io.FileNotFoundException: /c:/temp/Book2.xls 03-18 16:33:31.255: WARN/System.err的(8693):在 org.apache.harmony.luni。 platform.OSFileSystem.open(OSFileSystem.java:244) 03-18 16:33:31.255: WARN/System.err(8693):at java.io.FileInputStream。(FileInputStream.java:77) 03- 18 16:33:31.255: WARN/System.err(8693):at jxl.Workbook.getWorkbook(Workbook.java:213) 03-18 16:33:31.255: WARN/System.err的(8693):在 jxl.Workbook.getWorkbook(Workbook.java:198) 03-18 16:33:31.255: WARN/System.err的(8693):在 com.san。 test.MyActivity.read(MyActivity.java:93) 03-18 16:33:31.255: WARN/System.err(8693):at com.san.test.MyActivity.displayAlert(MyActivity.java:62)
無法獲取您的信息,請告訴清楚,那又怎麼能做到這一點 – 2011-03-18 11:12:35
你不能使用「C:」在android系統。沒有一個。使用/ data/...等等。閱讀這篇文章,瞭解更深入的:http://developer.android.com/guide/topics/data/data-storage.html – 2011-03-18 11:13:49
謝謝,我會讀它 – 2011-03-18 11:15:02