2013-10-08 65 views
-1

我需要创建一个N行ascii文件。 运行时读取N行。 操纵它们 并回写到同一个文件。使用ADT读取/写入文件

用ADT做这件事的好方法是什么?我尝试写入资产文件夹中的文件,我后来意识到在运行时不可编辑。

+1

资源文件打包成apk文件后不可编辑。您可以使用文件I/O,sharedpreferences或sqllite在客户端持久保存数据 – Tobrun

回答

1

您可以拉取要编辑的文件,进行编辑,然后用ADT将其推回。但是,您无权从外部访问设备内存中的文件夹(除非您的设备已植根,并且您已将文件权限更改为可以读取&)。所以这意味着通过ADT您无法访问特定应用程序的资产。

一个想法是在首次启动后将所需的资产转移到SD卡,并使用该资源。那么您可以通过控制台在DDMS中的Eclipse中的文件资源管理器中使用ADB来提取和推送特定文件。

+0

谢谢。是否有可能使用标准IO函数在SD卡中创建一个新文件?下面的想法似乎没有工作:String fileName = Environment.getExternalStorageDirectory()。getPath()+“/file.txt”;文件f =新文件(文件名); if(!f.exists()){f.createNewFile(); } – Zoran

+0

我编辑了我原来的帖子。 – Zoran

+0

似乎没有工作,为什么?你有例外吗?你有清单中定义的write_external_storage权限吗? – DArkO