java/kotlin 读取文件、写入文件
package dh.btb.backend.utils
import java.io.*object FileUtil { /**
* 创建文件
* @param filePath 文件路径(不要以/结尾)
* @param fileName 文件名称(包含后缀,如:ReadMe.txt)
* @throws IOException
*/
@Throws(IOException::class)
fun createTxtFile(filePath: String, fileName: String): Boolean {
var flag = false
val filename = File("$filePath/$fileName")
if (!filename.exists()) {
filename.createNewFile()
flag = true
}
return flag
} /**
* 写文件
*
* @param content 文件内容
* @param filePath 文件路径(不要以/结尾)
* @param fileName 文件名称(包含后缀,如:ReadMe.txt)
* 新内容
* @throws IOException
*/
fun writeTxtFile(content: String, filePath: String, fileName: String, append: Boolean): Boolean {
var flag: Boolean = true
val thisFile = File("$filePath/$fileName")
try {
if (!thisFile.parentFile.exists()) {
thisFile.parentFile.mkdirs()
}
val fw = FileWriter("$filePath/$fileName", append)
fw.write(content)
fw.close()
} catch (e: IOException) {
e.printStackTrace()
}
return flag
} /**
* 读TXT文件内容
* @param filePath 文件路径(不要以 / 结尾)
* @param fileName 文件名称(包含后缀,如:ReadMe.txt)
* @return
*/
@Throws(Exception::class)
fun readTxtFile(filePath: String, fileName: String): String? {
var result: String? = ""
val fileName = File("$filePath/$fileName")
var fileReader: FileReader? = null
var bufferedReader: BufferedReader? = null
try {
fileReader = FileReader(fileName)
bufferedReader = BufferedReader(fileReader)
try {
var read: String? = null
while ({ read = bufferedReader.readLine();read }() != null) {
result = result + read + "\r\n"
}
} catch (e: Exception) {
e.printStackTrace()
} } catch (e: Exception) {
e.printStackTrace()
} finally {
if (bufferedReader != null) {
bufferedReader.close()
}
if (fileReader != null) {
fileReader.close()
}
}
println("读取出来的文件内容是:\r\n$result")
return result
}
} fun main(args: Array<String>) {
val service = FileUtil
val pathName = "E:/temp"
val fileName = "ReadMe.json"
val content = "我现在在上班" +
"比较忙的时候别来打扰我"
service.createTxtFile(pathName, fileName)
service.writeTxtFile(content, pathName, fileName, false)
val str = service.readTxtFile(pathName, fileName)
println(str)
}
java/kotlin 读取文件、写入文件的更多相关文章
- java nio读取和写入文件
读取 package com.test; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputS ...
- 读取和写入 文件 (NSFIleManger 与 NSFileHandle)
读取和写入 文件 //传递文件路径方法 -(id)initPath:(NSString *)srcPath targetPath:(NSString *)targetPath { self = [su ...
- File类的特点?如何创建File类对象?Java中如何操作文件内容,什么是Io流Io流如何读取和写入文件?字节缓冲流使用原则?
重难点提示 学习目标 1.能够了解File类的特点(存在的意义,构造方法,常见方法) 2.能够了解什么是IO流以及分类(IO流的概述以及分类) 3.能够掌握字节输出流的使用(继承体系结构介绍以及常见的 ...
- Java中读取properties资源文件
一.通过ResourceBundle来读取.properties文件 /** * 通过java.util.resourceBundle来解析properties文件. * @param String ...
- 在线程中进行读取并写入文件和wenjia
新人求(胸)罩!!! import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException ...
- Python读取和写入文件
1 从文件中读取数据 1.1 读取整个文件 创建名为test的txt文本文件,添加内容如下所示: 123456789023456789013456789012 实现代码: with open('tes ...
- 【转】MFC中用CFile读取和写入文件2
原文网址:http://blog.sina.com.cn/s/blog_623a7fa40100hh1u.html CFile提供了一些常用的操作函数,如表1-2所示. 表1-2 CFile操作函数 ...
- C# Byte[]数组读取和写入文件
这个项目我用的是asp.net构建的,代码如下 protected void ByteToString_Click(object sender, EventArgs e) { string conte ...
- iOS学习 plist读取和写入文件
干iOS开发时间.后经常用来plist文件, 那plist什么文件是它? 它的全称是:Property List.属性列表文件.它是一种用来存储串行化后的对象的文件.属性列表文件的扩展名为.plis ...
随机推荐
- JVM内存计算问题
-Xmx10240m:代表最大堆 -Xms10240m:代表最小堆 -Xmn5120m:代表新生代 -XXSurvivorRatio=3:代表Eden:Survivor = 3 根据Gen ...
- 赢在面试之Java多线程(十一)
121,什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线程完 ...
- 【BZOJ4259】残缺的字符串 FFT
[BZOJ4259]残缺的字符串 Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时, ...
- SPOJ Number of Palindromes(回文树)
Number of Palindromes Time Limit: 100MS Memory Limit: 1572864KB 64bit IO Format: %lld & %llu ...
- 通过脚本同时运行几个spider
# 通过脚本同时运行几个spider目录结构: 1.在命令行能通过的情况下创建两个spider如TestSpiderTest2Spider 2.在items.py的同级目录创建run.py文件,有三种 ...
- Oracle-Rman(物理备份)
Rman(物理备份) Rman -recover manager Rman 备份的对象 数据文件 数据文件 (Data File) 控制文件 控制文件 (Control File) 参数文件 参数文件 ...
- AutoArchive settings explained
AutoArchive settings explained Applies To: Outlook 2010 More... Less AutoArchive helps manage the sp ...
- winrar命令行参数说明
用法: rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...> <@列表文件...> <解 ...
- Ubuntu系统Python3相关环境或模块安装
前提:一般用户安装都命令前都需要sudo ,或者在root用户下 1.Ubuntu 16.04 安装PyCharm Ubuntu 16.04 安装PyCharm 本文通过第三方源安装PyCharm,好 ...
- select * 为什么不好? limit 1 为什么好? --mysql SQL语句优化
问题一: Select * from student; 这种语句不好 我的理解:根据Innode存储引擎以及网上的各种资料所说的innodb的B+树索引结构可以分析出,当在非聚集索引列上搜索若用s ...