2014-01-30 49 views
0

在我的eclipse中,我有一個Java項目(讓我們將其命名爲項目A)。 這個項目有一個文件夾「DIC」,在它的一些文件,我用這個代碼來訪問這些文件:訪問所需Java項目中的文件的Android

File[] listOfFiles = new File("dic").listFiles(); 
    for (int i = 0; i < listOfFiles.length; i++) { (...) 

當項目A.執行這個完美的作品

現在我需要在Android項目中使用項目A中的類(項目B)。我在項目B的構建路徑中包含項目A,並且沒有編譯錯誤。

但是,當我嘗試在Android設備上執行上述代碼時,它似乎在檢查電話文件系統而不是項目A上的文件系統,因此無法找到這些文件。

如何從項目B訪問項目A中的文件?有沒有辦法替代項目A中的代碼,以便它可以直接在項目A和B中使用?

+2

不太可能的文件系統爲Android應用程序運行在一個不同的機器(在這種情況下是Android設備)。 Yuo需要以某種方式在android proyect中包含「dic」文件夾,或者將它們刻錄到服務器中並從服務器讀取它們。 – s1m3n

回答

0

將項目A中的dic文件夾複製到資產文件夾。並從那裏訪問該文件夾爲項目A的文件系統是您的計算機的硬盤而Android讀取移動

Resources res = getResources(); //if you are in an activity 
    AssetManager am = res.getAssets(); 
    String fileList[] = am.list(dirFrom); 

    if (fileList != null) 
    { 
     for (int i = 0;i<fileList.length;i++) 
     { 
      Log.d("",fileList[i]); 
     } 
    } 

這個代碼是從古老的問題android list files contained in assets subfolder

+0

我曾經想過一些非常相似的東西(雖然我很欣賞答案,因爲我還是新手,我正在學習如何使用android資源),但是我發現該解決方案有兩個問題:我需要這些文件在兩個地方,我需要Java和Android的不同方法。有什麼辦法可以避免這種情況? – Alan

相關問題