为什么Kotlin不让我使用writeText扩展名?

我有一个方法的Kotlin类,创建一些文本,然后我想把它写入一个文件:

import java.io.File import java.util.* import kotlin.io.* class MyClass { fun run() { val result = html { head { title { +"Entry page" } } body { h1 { +"Map" } +"Some HTML code" } } File("target/wdef/index.html").writeText(result) } } 

我得到一个错误 – 的writeText(result)突出显示红色,我得到错误消息Error:(26, 40) Kotlin: Unresolved reference: writeText

我该如何解决?

一个问题可能是你传递了一个错误的类型来writeText 。 它需要String ,但是你传递一个HTML建筑对象HTML 。 尝试使用toString转换它:

 File("target/wdef/index.html").writeText(result.toString())