话谈scala的参数解析

args大家都知道,是一个传参,那我们如果设定了输入参数是一个Array[String],在scala中如何读取迭代呢?
1、读取来说,我们需要借助于import scala.io.Source来打开文件,Source.fromFile(args(0))尝试打开文件,返回的是Source对象。如果借助于Java的File函数也可以。之后调用getLines函数返回是一个Iterator[String]。该Iterator[String]是一个枚举器,一旦枚举完就失效了,故而如果说随时使用,我们可以写成Source.fromFile(args(0)).getLines.toList将其转化成列表存储在内存中。

import scala.io.Source

object P12{
  def getDataFromTextFile(args:Array[String]):Unit={
    if (args.length > 0){
      for (line <- Source.fromFile(args(0)).getLines){
          println(line.length + ":" + line)
      }
    }
    else
      Console.err.println("Please enter a filename")
  }

  def main(args: Array[String]): Unit = {
    val args_string:Array[String] = new Array[String](2)
    args_string(0) = "C:\\Users\\Desktop\\SparkLearning\\src\\main\\scala\\data.txt"
    args_string(1) = "HelloWorld"
    getDataFromTextFile(args_string)
  }

}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值