Scala文件操作----(读取和写入字符)
来源:互联网 发布:java开发app后台demo 编辑:程序博客网 时间:2024/06/05 21:05
如果有以下情景,怎么用scala实现读写文件?
1、实现读取以下文件内容
E:/device_level
2、将字符串写入文件
"E:/test.txt"
实现如下:
package com.ngaa.scala.testimport java.io.{ByteArrayInputStream, File, FileInputStream, InputStream}import scala.io.BufferedSource/** * Created by jfei_yang on 20170705. * Update date: * Time: 10:50 * Project: sparkmvn * Package: com.ngaa.scala.test * Describle : 测试scala读写文件操作 * * Result of Test: 测试通过 * Command: * * * Email: jifei.yang@ngaa.com.cn * Status:线上正在使用 * Machine ip: * ^^集群----->192.168.1.1(001业务统计) * ^^集群----->127.0.0.1 (002业务统计) * * Attention: * * */object TestNgaaUtils { def main(args: Array[String]) { val str="http://stat-y.xywy.com/vclick.png?Type=visit&Url=http%3A%2F%2Fm.so.xywy.com%2Fcomse.php%3Fsrc%3D3gclubso%26keyword%3D%25E5%259B%259B%25E5%258D%2581%25E5%2587%25A0%25E5%25B2%2581%25E7%2594%25B7%25E4%25BA%25BA%25E5%25BF%2583%2\n5E7%2590%2586&Domain=m.so.xywy.com&ClientId=1499086455712135328943326&ClientVisitNumber=7&ClientVisitNumberDay=7&SessionId=149908645571212102385&SessionNumber=7&LoginId=&UserType=&UrlKeyWord=%E5%9B%9B%E5%8D%81%E5%87%A0%E5%B2%81%E7%94%B7%E4%BA%BA%E5%BF%83%E7%90%86&TypeId\n=zhao&XPoint=15&YPoint=172&Height=80&Width=330&ItemId=m_detail_circles&Href=&TagName=DIV&Text=&Params=t%3Dmagicube%26n%3Dm_detail_circles%26p%3D1%26w%3D%E5%85%B6%E4%BB%96%E7%96%BE%E7%97%85%E5%9C%88&RandomNum=0.23594240844249725&RefKeyWord=&Redomain=3g.club.xywy.com&Ref=\nhttp%3A%2F%2F3g.club.xywy.com%2Fstatic%2F20140610%2F45407765.htm" //从文件中读取字符串 val json=inputToString(new FileInputStream ("E:/device_level")) //将字符串写入文件 inputToFile(str2InputStream(str),new File("E:/test.txt")) println(json) } //可以从InputStream中读取文件字符串 def inputToString(is: java.io.InputStream): String = { val lines: Iterator[String] = scala.io.Source.fromInputStream(is, "utf-8").getLines() val sb = new StringBuilder() lines.foreach(sb.append(_)) sb.toString() } //将输入流写入文件(test.txt)中 //参数f---> val file = new File("F:/test.txt") def inputToFile(is: java.io.InputStream, f: java.io.File) { val in: BufferedSource = scala.io.Source.fromInputStream(is) val out = new java.io.PrintWriter(f) try { in.getLines().foreach(out.print(_))//等价write,只是多了一句if(s==null)s="null" } finally { out.close } } /** * string to inputStream * @param str * @return */ def str2InputStream(str:String):InputStream={ new ByteArrayInputStream(str.getBytes()) }}
阅读全文
0 0
- Scala文件操作----(读取和写入字符)
- 【scala io】scala io操作 txt文件读取和写入
- Scala---文件读取、写入、控制台操作
- Scala之文件读取、写入、控制台操作
- scala 文件写入操作
- 0018.scala文件的读取写入操作代码
- Scala文件的读取和写入 从控制台输入内容
- 文件操作(读取和写入)
- 通过字符流来对文件进行内容的读取和写入操作
- scala学习:Scala文件的读取、写入、控制台输入操作代码
- java字节流和字符流操作文件,指定编码写入和读取,递归创建上层目录
- 文件读取和写入
- 文件读取和写入
- 文件读取和写入
- jsp文件操作:读取和写入文件的方法
- Scala学习第十八天 文件的读取、写入、控制台输入操作代码实战
- C++文件读取 写入 操作
- Java文件操作:按行读取和写入
- Kotlin学习之-5.11 对象表达式和声明
- Kali Linux 暴力破解 wifi密码
- Matlab 读写二维数组(复数)
- vs2015配置opencv3.2
- Swiift Pch和宏定义
- Scala文件操作----(读取和写入字符)
- 深入理解BFC和Margin Collapse
- Chrome 开发工具 Workspace 使用
- Echarts入门教程、使用总结(二)
- 关于java堆栈空间问题。
- js中background-position 无效
- php 二叉树算法小解
- Java观察者模式
- UICamera