2013-05-28 70 views
0

我对java很陌生,所以这可能很简单,但我找不到解决的办法。Java FileWriter文件位置

我正在构建一个应用程序,我需要能够将当前日期写入文件。我遇到问题的部分实际上是获取要写入的文件的位置。

读取文件,并把所有的文字,每行成一个ArrayList,我不得不使用没有问题:

Scanner in = new Scanner(MainActivity.class.getResourceAsStream("notes.dat")); 

但是,试图声明一个FileWriter我都尝试时:

FileWriter f = new FileWriter(new File("date.dat")); 

FileWriter f = new FileWriter(new File(MainActivity.class.getResourceAsStream("date.dat"))); 

(它适用于扫描仪,但是,它FileWriter的给我的错误:钍e构造文件(InputStream)未定义):

我也试过把文件放在不同的位置,如src文件夹和根android项目文件夹,并指向它正确,但它永远不会找到。

无论我看起来如何尝试使用文件编写器找到文件然后写入文件,该文件永远无法找到。 我创建没有链接到一个应用程序开发项目文件夹中的Java文件,并试图把date.dat在同一文件夹中的java文件,并能使用以下没有问题:

FileWriter f = new FileWriter(new File("date.dat")); 

我的问题是为什么FileWriter在正常的java文件上使用时似乎工作,但没有链接到android项目,但在我的项目中使用时,它停止工作,它如何解决?

回答

0

当您使用.getResource()和朋友时,JVM将在其类路径中查找匹配的名称。这意味着这可以是一个jar文件。

为了能够读取/写入文件,您不应该使用它。

尝试并创建一个外部目录,您知道该目录的位置并在其中工作。