我给定的文件/path/file.txt例如包含以下内容:
Hello World!
尝试读给我听。
如何在代码内的一个字符串中读取整个内容?
对于此特定示例,字符串应如下所示:
"Hello World!\nTry to read me."
答案 0 :(得分:5)
如果您不想使用Core,则可以使用以下内置Pervasives模块中的功能:
let read_whole_file filename =
let ch = open_in filename in
let s = really_input_string ch (in_channel_length ch) in
close_in ch;
s
答案 1 :(得分:3)
为使以下解决方案正常工作,您需要使用Jane Street的Core
库,方法是在使用以下任何代码的地方上方的任何行上编写open Core
。
In_channel.read_all "./input.txt"
以单个字符串返回当前文件夹中input.txt
的内容。
也有用:
In_channel.read_lines "./input.txt"
返回文件中的行列表
In_channel.fold_lines
将文件中的所有行折叠为一个变量,也就是累加器
答案 2 :(得分:-1)
如果您想阅读所有的stdin:-
really_input_string stdin (in_channel_length stdin)