3
의 내용에 따라 파일을 열 :파이프 : 나는이 코드가 다른
import Pipes
import Pipes.Safe
import qualified Pipes.Prelude as P
import qualified Pipes.Safe.Prelude as P
import System.IO
import Data.Text as T
import Data.Text.IO as TIO
import qualified Pipes.Prelude.Text as T
someFunc :: IO()
someFunc = runSafeT $
P.withFile file1 ReadMode $ \file1Handle -> do
file2 <- liftIO $ TIO.hGetLine file1Handle
runEffect $
for (P.zip (T.fromHandleLn file1Handle)
(T.readFileLn $ T.unpack file2))
(\(l1,l2) -> do yield l2
yield l1)
>-> T.stdoutLn
을하지만 꽤 해키 것, 그리고 내가에서, 파이프 내에서 두번째 파일을 열 수 있도록하고 싶습니다 무엇 첫 번째 파일의 첫 줄을 읽었습니다. 아이디어가 있으십니까?
나는 아마도 당신이 얻을 수있는 가장 깨끗한 코드 일 것이라고 생각합니다. 여기에서 답을 얻지 못하면 [pipe mailing list] (https://groups.google.com/forum/#!forum/haskell-pipes)를 시도한 다음 여기에 답변을 게시하십시오. – ErikR