git 3 weeks ago
parent
commit
48c6126c6e
1 changed files with 14 additions and 14 deletions
  1. 14 14
      src/main/kotlin/cn/qqck/kotlin/tools/Files.kt

+ 14 - 14
src/main/kotlin/cn/qqck/kotlin/tools/Files.kt

@@ -7,25 +7,25 @@ import java.nio.file.Paths
 import java.nio.file.StandardOpenOption
 
 /**
- * 将字符串内容写入文件。
+ * 将字符串数据写入指定路径的文件。
  *
- * @param name 文件名称
- * @param dir 文件路径,默认为空,表示当前路径
- * @param append 是否以追加模式写入,默认为 false 表示覆盖写入
- * @return 写入是否成功,成功返回 true,否则返回 false
+ * @param data 待写入的字符串数据
+ * @param dir 文件保存的目录路径,可选参数,默认为 `null`(当前路径下操作)
+ * @param append 是否以追加的方式写入文件,默认为 `false`(覆盖模式写入)
+ * @return 如果写入成功返回 `true`;否则返回 `false`
  */
-fun String.fset(name: String, dir: String? = null, append: Boolean = false): Boolean = this.toByteArray().fset(name, dir, append)
+fun String.fset(data: String, dir: String? = null, append: Boolean = false): Boolean = this.fset(data.toByteArray(), dir, append)
 
 /**
- * 将当前 ByteArray 的内容写入到指定文件。
+ * 将二进制数据写入指定路径的文件。
  *
- * @param name 文件名,当提供 `dir` 参数时,此参数作为文件的相对路径或者文件名;如果 `dir` 未指定,则此参数为完整的文件路径
- * @param dir 可选的目录路径。如果指定,将 `name` 作为子路径结合形成完整文件路径
- * @param append 如果为 `true`,数据将追加到文件末尾;如果为 `false`,将覆盖文件内容
- * @return 返回布尔值,表示文件写入操作是否成功
+ * @param data 待写入的字节数组
+ * @param dir  文件保存的目录路径,可选参数,默认为 `null`(当前路径下操作)
+ * @param append 是否以追加的方式写入文件,默认为 `false`(覆盖模式写入)
+ * @return 如果写入成功返回 `true`;否则返回 `false`
  */
-fun ByteArray.fset(name: String, dir: String? = null, append: Boolean = false): Boolean {
-    val j_name = if (dir == null) Paths.get(name) else Paths.get(dir, name)
+fun String.fset(data: ByteArray, dir: String? = null, append: Boolean = false): Boolean {
+    val j_name = if (dir == null) Paths.get(this) else Paths.get(dir, this)
     do {
         try {
             val j_c = FileChannel.open(j_name, StandardOpenOption.CREATE, if (append) StandardOpenOption.APPEND else StandardOpenOption.WRITE)
@@ -33,7 +33,7 @@ fun ByteArray.fset(name: String, dir: String? = null, append: Boolean = false):
                 try {
                     val j_lock = j_c.lock()
                     try {
-                        j_c.write(ByteBuffer.wrap(this))
+                        j_c.write(ByteBuffer.wrap(data))
                         if (!append) j_c.truncate(j_c.position())
                         return true
                     } catch (_: Exception) {