Kotlin:无法让FileReader查找文件

时间:2018-10-28 11:15:39

标签: android kotlin

对于一个Android应用程序,我试图使用FilerReader函数读取我的csv文件,但是在尝试了所有方法之后,我无法找到我的文件。我在Mac上使用的是Android Studio。

下面是我在OnCreate()中的代码:

val filereader = BufferedReader(FileReader("sgsraagadata.csv"))

我尝试将csv文件放置在资产和所有资源文件夹(包括原始类型的文件夹)内。

Stackoverflow上的类似帖子建议我找到正在搜索的目录,以便可以将csv文件放入该目录中。但是,当我按照下面的说明进行操作时,我会得到。

当我使用时:

println(System.getProperty("user.dir"))

它打印“ /”。当我使用时:

println(File(".").getAbsoluteFile())

它显示“ /”。

鉴于这些打印输出,我应将csv文件放在哪里?

*还根据注释中的建议在资产文件夹中添加了一个显示csv文件的图像。结果仍然是找不到文件错误。 enter image description here

1 个答案:

答案 0 :(得分:0)

将文件放入assets文件夹中,然后按如下所示打开它:

val file = context.assets.open("sgsraagadata.csv")
val isr = InputStreamReader(file)
val reader = BufferedReader(isr)

var line = reader.readLine()
while (line != null) {
    // do something with the line
    line = reader.readLine()    
}

提供有效的上下文或在活动中可以忽略它。