Copyright | (c) 2018-2022 Kowainik |
---|---|
License | MIT |
Maintainer | Kowainik <xrom.xkov@gmail.com> |
Stability | Stable |
Portability | Portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Lifted to MonadIO
families of file processing functions for the Text
, LText
,
ByteString
and LByteString
types.
These functions are lifted which means that you can also use them inside
various Monad Transformers without adding liftIO
call explicitly.
NOTE: These functions are for working with textual data. Functions that work
with Text
or LText
types are system and locale-sensitive (encoding,
line-endings). If you want binary data, use ByteString
functions (they are
also faster since they don't check encoding). However, you can then decode that
data with the help of functions from the Relude.String.Conversion module, e. g.
decodeUtf8
.
To be more precise, avoid the following functions:
See the following blog post for more details:
Since: 0.3.0
Synopsis
- readFileText :: MonadIO m => FilePath -> m Text
- writeFileText :: MonadIO m => FilePath -> Text -> m ()
- appendFileText :: MonadIO m => FilePath -> Text -> m ()
- readFileLText :: MonadIO m => FilePath -> m LText
- writeFileLText :: MonadIO m => FilePath -> LText -> m ()
- appendFileLText :: MonadIO m => FilePath -> LText -> m ()
- readFileBS :: MonadIO m => FilePath -> m ByteString
- writeFileBS :: MonadIO m => FilePath -> ByteString -> m ()
- appendFileBS :: MonadIO m => FilePath -> ByteString -> m ()
- readFileLBS :: MonadIO m => FilePath -> m LByteString
- writeFileLBS :: MonadIO m => FilePath -> LByteString -> m ()
- appendFileLBS :: MonadIO m => FilePath -> LByteString -> m ()
Text
readFileText :: MonadIO m => FilePath -> m Text Source #
Warning: readFileText
depends on the system's locale settings and can throw unexpected exceptions.Use readFileBS
instead.
Lifted version of readFile
.
Since: 0.3.0
writeFileText :: MonadIO m => FilePath -> Text -> m () Source #
Lifted version of writeFile
.
Since: 0.3.0
appendFileText :: MonadIO m => FilePath -> Text -> m () Source #
Lifted version of appendFile
.
Since: 0.3.0
Lazy Text
readFileLText :: MonadIO m => FilePath -> m LText Source #
Warning: readFileLText
depends on the system's locale settings and can throw unexpected exceptions.Use readFileLBS
instead.
Lifted version of readFile
.
Since: 0.3.0
writeFileLText :: MonadIO m => FilePath -> LText -> m () Source #
Lifted version of writeFile
.
Since: 0.3.0
appendFileLText :: MonadIO m => FilePath -> LText -> m () Source #
Lifted version of appendFile
.
Since: 0.3.0
ByteString
readFileBS :: MonadIO m => FilePath -> m ByteString Source #
Lifted version of readFile
.
Since: 0.3.0
writeFileBS :: MonadIO m => FilePath -> ByteString -> m () Source #
Lifted version of writeFile
.
Since: 0.3.0
appendFileBS :: MonadIO m => FilePath -> ByteString -> m () Source #
Lifted version of appendFile
.
Since: 0.3.0
Lazy ByteString
readFileLBS :: MonadIO m => FilePath -> m LByteString Source #
Lifted version of readFile
.
Since: 0.3.0
writeFileLBS :: MonadIO m => FilePath -> LByteString -> m () Source #
Lifted version of writeFile
.
Since: 0.3.0
appendFileLBS :: MonadIO m => FilePath -> LByteString -> m () Source #
Lifted version of appendFile
.
Since: 0.3.0