java - 无法在Kotlin中解析字符串到文件

标签 java kotlin intellij-idea error-handling compiler-errors

这是基本脚本,您在其中输入文件作为参数之一,并基于文件的扩展名使用其他程序执行该文件。
这不是完整的代码,而只是给我一个错误的代码:

package com.pavlos.efstathiou.runScript

import java.io.BufferedReader
import java.io.File
import java.util.logging.Level.parse

fun main(args: Array<String>) {
    val filename: Any = args[0]
    if (args.isEmpty()) println("No arguments provided")
    if (args.size > 2) println("Too many arguments provided")
    fun read() {
        val filenameString = File.parse(filename) // I don't know what function to use to parse the filename String
        val reader: BufferedReader = filenameString.bufferedReader()
        val inputString = reader.use { it.readText() }
        println("Contents of file: $inputString")

    }
}
唯一的问题是我无法将函数的参数(字符串)解析为文件名。
对不起,我的密码不好我是Kotlin的初学者

最佳答案

你会踢自己... :-)
要创建File对象,只需调用其constructor,例如File("/path/to/myFile")。 (还有其他构造函数可让您分别指定目录和文件名或URI。)
文件是文件名的抽象表示;它可以是绝对的(以/开头或文件系统的根目录开头),也可以是相对的(相对于当前目录)。该文件甚至不需要存在。
当然,如果没有,那么当您尝试在下一行中为其创建阅读器时,您将得到一个错误。 (我确定,当您将其转换为生产代码时,将处理I/O错误!)
Kotlin提供了其他方式来读取文件;看一看扩展函数File.useLinesFile.readLinesFile.forEachLine,它们使它变得更加容易。

关于java - 无法在Kotlin中解析字符串到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64863925/

相关文章:

python - Django Webpack 加载器 : "Assets" KeyError?

java - IntelliJ 与 Maven : Add classpath entry without copying the resources

java - LWJGL 帧率通过 Nvidia GPU 锁定

Java 在互联网算法(搜索、大数据等)中的流行

java - 使用 Jackson 反序列化

kotlin - 如何使用 toString 扩展数据类

android - 找不到类 "android.provider.MediaStore$Downloads"

java - 是否可以使用 Sikuli 来断言图像在无 GUI 模式下是相同的?

android - 尝试从 Room 数据库实例中检索值时抛出 IllegalStateException

java - Maven 无法通过流操作链编译 java