Escrevendo um arquivo de texto

Haskell:
Escrevendo um arquivo de texto

Como Fazer:

A Prelude padrão do Haskell oferece suporte elementar para escrever em arquivos usando as funções writeFile e appendFile do módulo System.IO. Aqui está um exemplo básico de como criar um novo arquivo (ou sobrescrever um existente) e, em seguida, anexar texto a um arquivo.

import System.IO

-- Escrevendo em um arquivo, sobrescrevendo se existir
main :: IO ()
main = do
  writeFile "example.txt" "Esta é a primeira linha.\n"
  appendFile "example.txt" "Esta é a segunda linha.\n"

Quando você executa este programa, ele cria (ou limpa) example.txt e escreve “Esta é a primeira linha.” seguido por “Esta é a segunda linha.” na próxima linha.

Para um tratamento de arquivos mais avançado, os programadores de Haskell costumam recorrer ao pacote text para processamento eficiente de strings e ao pacote bytestring para manipulação de dados binários. Veja como usar o pacote text para E/S de arquivo:

Primeiro, você precisa adicionar text às dependências do seu projeto. Então, você pode usá-lo da seguinte forma:

import qualified Data.Text as T
import qualified Data.Text.IO as TIO

-- Escrevendo em um arquivo usando o pacote text
main :: IO ()
main = do
  let conteúdo = T.pack "Usando o pacote text para melhor desempenho.\n"
  TIO.writeFile "textExample.txt" conteúdo
  TIO.appendFile "textExample.txt" $ T.pack "Anexando a segunda linha.\n"

Neste trecho, T.pack converte uma String regular para o tipo Text, que é mais eficiente. TIO.writeFile e TIO.appendFile são os equivalentes no text para escrever e anexar a arquivos, respectivamente.

Executar este código resultará em um arquivo chamado textExample.txt com duas linhas de texto, demonstrando capacidades tanto de criação quanto de anexação usando a biblioteca text avançada para melhor desempenho e capacidade no manuseio de texto Unicode.