如何在 Android 中写入外部文本文件?
Posted
技术标签:
【中文标题】如何在 Android 中写入外部文本文件?【英文标题】:How to write to an external text file in Android? 【发布时间】:2011-04-30 21:00:37 【问题描述】:我想在 android 项目的文本文件中写一个字符串行(使用 Eclipse)。这是我正在尝试但它不工作的代码...
String s="hello azeem\n";
try
FileOutputStream fos = openFileOutput("C:\\eventslog.txt", Context.MODE_PRIVATE);
fos.write(s.getBytes());
fos.close();
catch (Exception e)
有什么想法吗??
【问题讨论】:
复制您 20 分钟前的帖子,How to write to an external text file in Android?。请不要转发;改为使用说明来编辑您的原始问题。 如果您有请告诉我解决方案... 【参考方案1】:有两种方法可以理解您的问题:
-
您想将文件写入计算机中的 c: 驱动器 - 好吧,您不能。如果您想以编程方式将某些文件从 android 保存到您的计算机,则必须通过网络发送。
您想写入 android FS 中的某个位置 - 在这种情况下,
c:\
是无关紧要的,因为这是一个 windows 路径,而 android 是基于 unix 的,这意味着所有路径也从 root (/
) 开始, android SDK 为您提供了一些无需使用固定路径即可访问相关目录文件的方法。见这里:http://developer.android.com/guide/topics/data/data-storage.html
【讨论】:
非常感谢您的回复。让我再澄清一下我的问题:实际上有一个名为 eventslog.txt 的文件位于我的 windows xp 的 C 文件夹中。我正在编写一个只有一个活动的 android 测试应用程序,我只需要在文件 eventslog.txt 中写入一行“hello world”...我需要它,因为稍后另一个应用程序将使用此文件中的数据。请告诉我我可以这样做吗?谢谢。 您需要在您的 Windows PC 上安装一个服务器,并让您的活动通过 TCP 将数据发送到您的计算机。 你能告诉我一个链接,我可以在哪里找到关于这个的完整教程(使用 TCP 完成这个任务)?谢谢。 当然,看这里:adp-gmbh.ch/blog/2004/november/15.html 和这里:dreamincode.net/forums/topic/139154-transfer-a-file-over-tcp 我建议你学习一些通用的 TCP 套接字教程,因为它是一个非常有用的知识。【参考方案2】:将 Android 中的文本写入设备的 sdcard。使用 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 现在存在于 sdcard 和 C:\foo.txt
上对不起,如果这不符合您的意图。您必须从 Windows 调用批处理文件。
【讨论】:
【参考方案3】:也许你没有添加它的权限...
这里是:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
【讨论】:
以上是关于如何在 Android 中写入外部文本文件?的主要内容,如果未能解决你的问题,请参考以下文章