2011-04-30 57 views
0

我想在android項目的文本文件(使用Eclipse)中編寫一個字符串行。這是我正在嘗試的代碼,但它不工作...如何在Android中寫入外部文本文件?

String s="hello azeem\n"; 
    try{ 
    FileOutputStream fos = openFileOutput("C:\\eventslog.txt", Context.MODE_PRIVATE); 
    fos.write(s.getBytes()); 
    fos.close(); 
    } 
    catch (Exception e){ 

    } 

任何想法??

+0

20分鐘前你的帖子有重複,[如何寫入Android的外部文本文件?](http://stackoverflow.com/questions/5844476/how-to-write-to-an-external-text -file功能於機器人)。請不要轉發;改爲用澄清來編輯您的原始問題。 – 2011-04-30 21:03:01

+2

請告訴我解決方案,如果你有...我更好地考慮做出新的職位,這裏清楚地描述了這個問題。 – Azeem 2011-04-30 21:07:52

回答

4

有兩種方式來理解你的問題:

  1. 你要寫入文件到C:驅動器在你的電腦 - 你不能很好。如果你想從android安裝一些文件到你的電腦編程,你必須通過網絡發送它。
  2. 你想寫在Android FS的一些地方 - 在這種情況下c:\是無關緊要的,因爲這是一個Windows路徑,並且android是基於unix的,意思是所有路徑都從根(/)開始,android SDK也爲您提供一些訪問相關目錄文件而不使用固定路徑的方法。在這裏看到:http://developer.android.com/guide/topics/data/data-storage.html
+0

非常感謝您的回覆。讓我再澄清一下我的問題:實際上有一個名爲eventslog.txt的文件,放在我的Windows XP的C文件夾中。我正在寫一個只有一個activity的android測試應用程序,我只需要在文件eventslog.txt中寫一行「hello world」...我需要它,因爲其他應用程序將在稍後使用此文件中的數據。請告訴我可以這樣做嗎?謝謝。 – Azeem 2011-04-30 21:14:54

+1

您需要在Windows PC上安裝一臺服務器,並讓您的活動通過TCP將數據發送至您的計算機。 – MByD 2011-04-30 21:17:20

+0

你能告訴我一個鏈接,我可以在這裏找到一個完整的教程(使用TCP完成此任務)?謝謝。 – Azeem 2011-04-30 21:21:03

-1

也許你沒有添加它的權限...

這是在這裏:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
1

寫的Android的設備的SD卡中的文本。使用Android Bridge(在sdk \ platform-tools中找到adb.exe)將txt文件拖放到您的驅動器上...在您的情況下,是一個Windows磁盤。

(寫文字的Android到foo.txt的)

在命令bar.bat

adb pull /sdcard/Android/data/com.example.yourapp/files/foo.txt C:\foo.txt 

運行bar.bat文件。而已。 foo.txt現在存在於SD卡和C:\ foo.txt上

對不起,如果這與您的意圖不符。您必須從Windows調用批處理文件。