Haskell在线运行

版本:
运行结果
教程手册
代码仓库
极速运行
交互输入
极速运行模式,更高效的运行,点击编辑器上方的运行按钮即刻体验吧。
以下是用户最新保存的代码
这是一个小程序 发布于:2021-10-12 22:01 haskell 测试 发布于:2021-09-23 22:38 [更多]
显示目录

输入和输出



输入和输出

前面的所有例子都是静态的。在本章中,我们将学习与用户动态通信。我们将学习Haskell中使用的不同输入和输出技术。


文件和流

到目前为止,我们对程序中的所有输入进行了硬编码本身。我们一直在从静态变量中获取输入。现在,让我们学习如何从外部文件中读取和写入。

让我们创建一个文件并将其命名为"abc.txt"。接下来,在此文本文件中输入以下行:"欢迎使用Tutorialspoint。在这里,您将获得学习Haskell的最佳资源。"

接下来,我们将编写以下代码,在控制台上显示此文件的内容。在这里,我们使用readFile()函数读取文件,直到找到EOF字符。

 main = do 
 let file ="abc.txt"
内容<  -  readFile文件
 putStrLn内容

上面的代码将读取文件"abc.txt"作为String,直到遇到任何End of File字符。这段代码将生成以下输出。

欢迎使用Tutorialspoint 
在这里,您将获得学习Haskell的最佳资源。

观察终端上打印的内容是否写入该文件。


命令行参数

Haskell还提供了通过命令提示符操作文件的工具。让我们回到终端并输入"ghci"。然后,键入以下命令集−

 let file ="abc.txt"
 writeFile file"我只是在试验这里。" 
 readFile文件

这里,我们创建了一个名为"abc.txt"的文本文件。接下来,我们使用命令 writeFile 在文件中插入了一个语句。最后,我们使用命令 readFile 在控制台上打印文件的内容。我们的代码将生成以下输出−

 我只是在这里进行实验。

异常

异常可被视为代码中的错误。这是编译器在运行时没有获得预期输出的情况。像任何其他优秀的编程语言一样,Haskell提供了一种实现异常处理的方法。

如果您熟悉Java,那么您可能知道我们通常会抛出错误的Try-Catch块在 catch 块中捕获相同的内容。在Haskell中,我们也有相同的函数来捕获运行时错误。

try 的函数定义看起来像"try :: Exception e => IO a - > IO(要么是ea)"。看一下下面的示例代码。它显示了如何捕获"除以零"异常。

 import Control.Exception 
 main = do 
 result<  -  try(evaluate(5`div` 0)):: IO(SomeException Int)
结果
左前 - > putStrLn $"Caught exception:"++ show ex 
 Right val  - > putStrLn $"答案是:"++ show val

在上面的例子中,我们使用了内置的 try 函数 Control.Exception 模块,因此我们预先捕获异常。上面的代码将产生屏幕下方的输出。

捕获异常:除以零
由JSRUN为你提供的Haskell在线运行、在线编译工具
        JSRUN提供的Haskell在线运行,Haskell 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。

title

使用此草稿 删除草稿

  • 00:23
注册登录后可减少验证码的弹出,点击前往 注册 | 登录

皮肤:

运行模式:

嵌入代码 iframe嵌入:


服务器已安装大部分常用的第依赖库,但仍可能存在一些未被安装的库, 可以通过本窗口立即安装所需依赖库。


请输入依赖库的名称:

请选择语言: