Leer y escribir para archivar en Haskell
Estoy tratando de leer el contenido de un archivo, convertir el texto en mayúsculas y luego escribirlo de nuevo.
Aquí está el código que había escrito:
import System.IO
import Data.Char
main = do
handle <- openFile "file.txt" ReadWriteMode
contents <- hGetContents handle
hClose handle
writeFile "file.txt" (map toUpper contents)
return ()
Sin embargo, esto no escribe nada en el archivo, de hecho, incluso lo borra.
Hice algunos cambios:
main = do
handle <- openFile "file.txt" ReadWriteMode
contents <- hGetContents handle
writeFile "file.txt" (map toUpper contents)
hClose handle
return ()
Sin embargo, me sale el errorresource busy (file is locked)
. ¿Cómo puedo hacer que esto funcione ypor qué no funcionó en ambos casos?