你可以在一行中要求整个工具包
//> using toolkit latest
或者,你只需要求 OS-Lib 的特定版本
//> using dep com.lihaoyi::os-lib:0.9.1
在你的 build.sbt
中,你可以添加对工具包的依赖
lazy val example = project.in(file("example"))
.settings(
scalaVersion := "3.2.2",
libraryDependencies += "org.scala-lang" %% "toolkit" % "0.1.7"
)
或者,你只需要求 OS-Lib 的特定版本
libraryDependencies += "com.lihaoyi" %% "os-lib" % "0.9.1"
在你的 build.sc
文件中,你可以添加对工具包的依赖
object example extends ScalaModule {
def scalaVersion = "3.2.2"
def ivyDeps =
Agg(
ivy"org.scala-lang::toolkit:0.1.7"
)
}
或者,你只需要求 OS-Lib 的特定版本
ivy"com.lihaoyi::os-lib:0.9.1"
一次性写入文件
os.write
将提供的字符串写入新文件
val path: os.Path = os.temp.dir() / "output.txt"
os.write(path, "hello\nthere\n")
println(os.read.lines(path).size)
// prints: 2
覆盖或追加
os.write
如果文件已存在,则会抛出异常
os.write(path, "this will fail")
// this exception is thrown:
// java.nio.file.FileAlreadyExistsException
为避免这种情况,请使用 os.write.over
替换现有内容。
您还可以使用 os.write.append
在末尾添加更多内容
os.write.append(path, "two more\nlines\n")
println(os.read.lines(path).size)
// prints: 4
此页面的贡献者
内容
- 简介
- 使用 MUnit 进行测试
- 如何编写测试?
- 如何运行测试?
- 如何运行单个测试?
- 如何测试异常?
- 如何编写异步测试?
- 如何管理测试的资源?
- MUnit 还能做什么?
- 使用 OS-Lib 处理文件和进程
- 如何读取目录?
- 如何读取文件?
- 如何写入文件?
- 如何运行进程?
- OS-Lib 还能做什么?
- 使用 uPickle 处理 JSON
- 如何在 JSON 中访问值?
- 如何修改 JSON?
- 如何将 JSON 反序列化为对象?
- 如何将对象序列化为 JSON?
- 如何读取和写入 JSON 文件?
- uPickle 还能做什么?
- 使用 sttp 发送 HTTP 请求
- 如何发送请求?
- 如何构造 URI 和查询参数?
- 如何发送带正文的请求?
- 如何发送和接收 JSON?
- 如何通过 HTTP 上传文件?
- sttp 还能做什么?