2012-08-25 23 views
0

讀取文件拷貝我+ A *.txt文件粘貼到該文件夾​​/frameworks/opt/telephony/src/java/android/telephony。現在我想從SmsManager中讀取它,但是當我運行"emulator + adb logcat"時,它告訴我它無法找到該文件。我可以從SmsManager

SmsManager.javatextfile.txt這兩個文件都在同一個文件夾中。

我裏面SmsManager代碼:

try { 

     FileInputStream fstream = new FileInputStream("textfile.txt"); 
     // Get the object of DataInputStream 
     DataInputStream in = new DataInputStream(fstream); 
     BufferedReader br = new BufferedReader(new InputStreamReader(in));   
      String line; 

      // read every line of the file into the line-variable, on line at the time 
      while ((line = br.readLine()) != null) { 
       Log.i(TAG, line+"@@@@@@@@@@@@@@@@@@@@@@@@@@"); 
      } 



     in.close(); 
     } catch (java.io.FileNotFoundException e) { 
      Log.i(TAG, "File didnt found"); 
     } catch (java.io.IOException e) { 
      Log.i(TAG, "File didnt found"); 
     } 

什麼是錯的,或者我必須將文件保存到找到了嗎?

+0

你試圖修改Android源代碼?爲什麼? – Eric

+0

是的,我的論文 – Nik

+0

您將不得不修改make文件以在Android中包含txt文件。您不能將文本文件放在任何文件夾中。當你修改make文件時,你可以給它放置的地方。它通常位於/ system /中,您需要在文件中打開 – nandeesh

回答

0

你將不得不修改device.mk像下面從源代碼複製到Android文件系統

PRODUCT_COPY_FILES := frameworks/abc.txt:system/abc.txt 

在你的代碼,你將有訪問/system/abc.txt

+0

的任何makefile中,因此我必須將我的txt文件放到文件夾框架中,然後使用上面的建議修改device.mk。我對嗎?抱歉,所有這一切,但我是在Android新。 – Nik

+0

是的。但是你將不得不改變適當的device.mk。查找任何已經使用PRODUCT_COPY_FILES的Android.mk,並且可以在其下面添加您的副本 – nandeesh

+0

我已修改device.mk whick位於此文件夾中:android/build/target/board/generic是否正確? 我怎麼知道whick是正確的device.mk? – Nik