2011-04-30 56 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调用批处理文件。