2011-04-19 79 views
3

我正在嘗試使用eclipse工作區閱讀安卓應用程序的Excel表格。我把文件路徑,但它似乎甚至沒有找到它。我需要在某處聲明文件的路徑嗎?閱讀安卓程序的Excel表格

以下是我的代碼。感謝您的幫助!

public void onCreate(Bundle savedInstanceState) { 
     vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); // calls VIBRATOR_SERVICE when button is pressed 
     screensize = getScreenSize(); 
     setTheme(android.R.style.Theme_Translucent_NoTitleBar); 
     super.onCreate(savedInstanceState); 

     Eula.show(this); // displays the EULA and asks user to Accept or Don't Accept 

     try{ 
      fs = new FileInputStream(new File("/Users/paul/Desktop/CollegeTrack/Samp.xls")); 
      InputStream fileinput = fs; 
      try{ 
       Workbook workbook = Workbook.getWorkbook(fileinput); 
       sheet = workbook.getSheet(0); 
       database_array = Database.classDatabase(sheet); //stores each row in an array 
       workbook.close(); 

      } 
      catch (BiffException e) { 
       e.printStackTrace(); 
      } 
       catch (IOException e) { 
       e.printStackTrace(); 
      } 
     fs.close(); 
     } 
     catch (IOException e) { 
      e.printStackTrace(); 
     } 
      savedAssignments_array = Database.assignmentDatabase(); 
      savedCourses_array = Database.savedCourses(); 
      goToWelcomeScreen(); 
     } 
+0

你有什麼例外。這個看起來很正確。你可能會得到一個IOException。你讀過異常堆棧跟蹤嗎? – 2011-04-19 16:27:14

回答

4

它可能失敗,因爲路徑的你使用:

fs = new FileInputStream(new File("/Users/paul/Desktop/CollegeTrack/Samp.xls"));

我想這點到一個文件在您的計算機上的某個地方,因爲它有「桌面」的路徑。你的模擬器運行一個完全獨立的操作系統(Android),它沒有這個文件的位置的概念。爲了訪問它,您需要1)將文件傳輸到仿真器的存儲或2)在兩者之間建立共享網絡連接。

從實際手機的角度思考它:您無法將手機指向桌面上的文件。這是一個獨立的獨立設備。模擬器就是這樣,它恰好在您電腦的操作系統上運行。

+0

謝謝!這非常有幫助! – dadude5888 2011-04-20 20:06:11