如何将Crystal中的src文件加载到内存中?

时间:2018-12-12 18:01:22

标签: file crystal-lang

请求非常简单:将内部项目src/目录中的文件加载到内存中。最后,将其内容打印到屏幕上。有什么帮助吗?

如果我们使用File.new("path/to/file"),它将在本地文件系统中打开一个文件,所以这不是我要搜索的。

问候。

1 个答案:

答案 0 :(得分:4)

下一个Crystal版本0.27.1将包含一个read_file宏。更改已在主服务器中,但尚未发布。

使用此宏,您只需执行{{ read_file("path/to/file") }},它将扩展为包含文件内容的字符串(在编译时)。

在发布0.27.1之前,一种典型的解决方法是使用{{ `cat path/to/file`.stringify }}

schovi/baked_file_system是一种用于将许多文件编译为二进制文件并在运行时在虚拟文件系统中访问它们的更复杂的解决方案。