我正在编写一个Spark作业,尝试使用Scala读取文本文件,在我的本地机器上,以下代码可以正常工作。
val myFile = "myLocalPath/myFile.csv"
for (line <- Source.fromFile(myFile).getLines()) {
val data = line.split(",")
myHashMap.put(data(0), data(1).toDouble)
}
然后我尝试在 AWS 上让它工作,我做了以下操作,但似乎没有正确地读取整个文件。在 s3 上读取这样的文本文件的正确方式是什么?非常感谢!
val credentials = new BasicAWSCredentials("myKey", "mySecretKey");
val s3Client = new AmazonS3Client(credentials);
val s3Object = s3Client.getObject(new GetObjectRequest("myBucket", "myFile.csv"));
val reader = new BufferedReader(new InputStreamReader(s3Object.getObjectContent()));
var line = ""
while ((line = reader.readLine()) != null) {
val data = line.split(",")
myHashMap.put(data(0), data(1).toDouble)
println(line);
}
java.io.FileNotFoundException
的错误。 - ibaralf