рдореИрдВ рдПрдХ рд╡рд┐рд╖рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЪрд┐рдВрддрд┐рдд рд╣реВрдВред рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдмреЛрд▓рдиреЗ рдФрд░ рд╕реБрдирдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рд▓реЛрдЧ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред рдпрд╣
hGetContents рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдХрднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдлрд╝рд╛рдЗрд▓ (рд╕реНрдЯреНрд░реАрдо) рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
import System.IO main = do file <- openFile "1.txt" ReadMode content <- hGetContents file print content hClose file
рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕рд╛рдорд╛рдиреНрдп рд╣реИ - рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ, рд╕рд╛рдордЧреНрд░реА рдкрдврд╝реЗрдВ, рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ, рдлрд╝рд╛рдЗрд▓ рдмрдВрдж рдХрд░реЗрдВред
HGetContents (рдпрд╛ рдмрд▓реНрдХрд┐ рд╣рд╛рд╕реНрдХреЗрд▓ рд╕реБрд╡рд┐рдзрд╛) рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЖрд▓рд╕реА рд╣реИред рдЕрд░реНрдерд╛рддреН, рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдбреЗрдЯрд╛ рддреБрд░рдВрдд рдкреВрд░реЗ рдореЗрдВ рдкрдврд╝рд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рдкрдврд╝рд╛ рдЬрд╛рдПрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо
import System.IO main = do file <- openFile "1.txt" ReadMode content <- hGetContents file print $ take 3 content hClose file
рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ 3 рд╡рд░реНрдгреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдХреНрдпрд╛ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдПрдХ рдорд╣рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛! рдпрд╣ рдЪрд░
рд╕рд╛рдордЧреНрд░реА (рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдордЧреНрд░реА) рдкрд░ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рд╕реНрдХреЗрд▓ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЙрд╕реА рд╕реЗ рд▓реЗрдЧрд╛ рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВред
рдЕрдм рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ
import System.IO main = do file <- openFile "1.txt" ReadMode content <- hGetContents file hClose file print content
рдпрд╣рд╛рдВ рд╣рдордиреЗ рдкрд┐рдЫрд▓реА рджреЛ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ред рдкрд░рд┐рдгрд╛рдо рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдПрдХ рд░рд┐рдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реБрдЖ? рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЬрдм
hGetContents рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛
рдЧрдпрд╛ рдерд╛, рддреЛ рдбреЗрдЯрд╛ рдХрд╣реАрдВ рднреА рдкрдврд╝рд╛ рдирд╣реАрдВ рдЧрдпрд╛ рдерд╛, рдмрд╕ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдХреБрдЫ рд▓рд┐рдВрдХ рдЪрд░
рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рдлрд┐рд░, рдЬрдм рд╣рдореЗрдВ рд╕рд╛рдордЧреНрд░реА
рд╕рд╛рдордЧреНрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рддреЛ рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрдВрдж рдереАред
рддреЛ рдпрд╣ рдХреНрдпрд╛ рд╣реИ, рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓ рдмрдВрдж рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
рд╕рд╛рдордЧреНрд░реА рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдпрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдлрд╝рд╛рдЗрд▓ рдмрдВрдж рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
рд╕рд╛рдордЧреНрд░реА рдЪрд░
рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкреНрд░рд╛рдкреНрдд" рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ (рдпрджрд┐ рдХреЛрдИ рд╡рд┐рдзрд┐ рдЬрд╛рдирддрд╛ рд╣реИ, рддреЛ рд▓рд┐рдЦреЗрдВ)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдЬреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рддрд╛ рд╣реИ, рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, рдХреБрдЫ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдВрдж рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕рдВрд░рдЪрдирд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
{-# OPTIONS_GHC -XScopedTypeVariables #-} import System.IO parseFile :: (Read a) => String -> IO a parseFile fileName = do file <- openFile fileName ReadMode content <- hGetContents file rezult <- return $ read content hClose file return rezult main = do a :: Int <- parseFile "1.txt" print a
рдпрд╣ рдПрдХ рдкреНрд░рд╛рдердорд┐рдХ рдЙрджрд╛рд╣рд░рдг рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЙрд╕реА рдХрд╛рд░рдг рд╕реЗред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреБрдЫ
рд░реАрдб рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛, рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдмрд╛рдж рдХреЗ рд▓рд┐рдП рднреА рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рд╣рдо рдЬреЛ рдХреБрдЫ рднреА
рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рд╣рд╛рд╕реНрдХреЗрд▓ рдХреЛ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ (рдЬрдм рддрдХ рдХрд┐, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рдо рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ)ред
рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдкреВрд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ
рдУрдкрдирдлрд╛рдЗрд▓ рдФрд░
hClose рдХреЗ рдмреАрдЪ рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдлрд╛рдЗрд▓ рд╕реЗ рдХрдВрдЯреЗрдВрдЯ рдкрдврд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдЙрд╕реЗ рд╕рд╣реА рдХрд░реЗрдВ рдФрд░ рдЙрд╕реА рдлрд╛рдЗрд▓ рдкрд░ рд▓рд┐рдЦреЗрдВ?
рдореИрдВрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рдФрд░ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ "рдпрд╣рд╛рдБ рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реИ" рдореБрдЭреЗ рдЕрдХреЗрд▓рд╛ рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛ред Haskell рдХреА рдкрд╡рд┐рддреНрд░рддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд┐рдЦрд╛ рдерд╛ рдЬреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╣реА рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдореБрдЭреЗ рдХреНрдпрд╛ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡рд╣ рдЗрд╕ рдЪрд░ рдХреЛ рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рдореЛрдбрд╝ рджреЗрдЧрд╛ рдФрд░ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд╡рд╣ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ? рдпрд╣ рд╣рд╛рд╕реНрдХреЗрд▓ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рдХрд┐рд╕реА рддрд░рд╣ рдХрд╛ рд╕реА ++ред
рдирддреАрдЬрддрди, рдореИрдВ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рдХрд┐ рдпрд╣ "рд╕реБрд╡рд┐рдзрд╛" рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдмрдЧ рд╣реИред рдЕрдЧрд░ рдореИрдВрдиреЗ рдЖрдкрдХреЛ рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рдХреБрдЫ рдХрд╛рд░рдг рд╣реИрдВ:
- 1. рд▓реИрдореНрдмреНрдбрд╛ рдХреИрд▓рдХреБрд▓рд╕ рдореЗрдВ, рд▓реИрдореНрдмреНрдбрд╛ рд╢рдмреНрдж рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд░рдгрдиреАрддрд┐рдпрд╛рдБ рд╣реИрдВ: рдкреВрд░реНрдг рдмреАрдЯрд╛ рдореЗрдВ рдХрдореА , рдЧрдгрдирд╛рдУрдВ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рдХреНрд░рдо , рдирд╛рдо рд╕реЗ рдХреЙрд▓ рдХрд░рдирд╛ (рд╣реИрд╕реНрдХреЗрд▓ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреЙрд▓рд┐рдВрдЧ рдХрд╛ рдПрдХ рдЕрдиреБрдХреВрд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ), рдореВрд▓реНрдп рджреНрд╡рд╛рд░рд╛ рдХреЙрд▓ (рдЬреЛрд░рджрд╛рд░ рдЧрдгрдирд╛)ред рдПрдХ рдкреНрд░рдореЗрдп рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЧрдгрдирд╛ рдХреА рд░рдгрдиреАрддрд┐ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдХрд┐рд╕реА рднреА рд▓рдВрдмреЛрджрд░ рд╢рдмреНрдж рдХреЛ рдЙрд╕реА рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рдШрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдЧрд░ рдпрд╣ рд╕рднреА рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рдпрд╛рдиреА рдЧрдгрдирд╛ (рдЖрд▓рд╕реА рдпрд╛ рдКрд░реНрдЬрд╛рд╡рд╛рди) рдХреЗ рдХрд┐рд╕реА рднреА рдХреНрд░рдо рдХреЗ рд▓рд┐рдП, рд╡рд╣реА рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдЪ рд╣реИ, рд▓реИрдВрдмрдбрд╛ рд╢рдмреНрджреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЧрдгрдирд╛ рдПрдХ рдКрд░реНрдЬрд╛рд╡рд╛рди рд░рдгрдиреАрддрд┐ рдХреЗ рд╕рд╛рде рдЪрдХреНрд░ рдореЗрдВ рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЖрд▓рд╕реА рдХреЗ рд╕рд╛рде рдЪрдХреНрд░ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдВрддрд╣реАрди рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛)ред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рджреЛрдиреЛрдВ рдЧрдгрдирд╛ рдкреВрд░реА рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╣реА рдкрд░рд┐рдгрд╛рдо рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП!
(рд╡реИрд╕реЗ, рд░рд┐рд╡рд░реНрд╕ рдЙрджрд╛рд╣рд░рдг, рдЬрдм рдЖрд▓рд╕реА рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдКрд░реНрдЬрд╛рд╡рд╛рди рд╡реНрдпрдХреНрддрд┐ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдЕрд░реНрде рдореЗрдВ, рдЖрд▓рд╕реА рд░рдгрдиреАрддрд┐ рд╕рдмрд╕реЗ "рд╕рдЯреАрдХ" рд╣реИ)
рдпрджрд┐ рд╣рдо рдЕрдкрдиреЗ рдЕрдВрддрд┐рдо рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рд╛рд╕реНрдХреЗрд▓ рдиреЗ рдКрд░реНрдЬрд╛рд╡рд╛рди рд░реВрдк рд╕реЗ рдЧрдгрдирд╛ рдХреА рд╣реИ, рддреЛ рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╛рдиреА рдКрд░реНрдЬрд╛рд╡рд╛рди рдореЛрдб рдореЗрдВ, рдПрдХ рдкрд░рд┐рдгрд╛рдо, рдФрд░ рдЖрд▓рд╕реА рдореЛрдб рдореЗрдВ - рдПрдХ рдФрд░ред рдЖрдк рддрд░реНрдХ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрдХ рд▓рдВрдмреЛрджрд░ рд╢рдмреНрдж рдирд╣реАрдВ рд╣реИ рдФрд░ рдПрдХ рд╢реБрджреНрдз рдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рдПрдХ рддрд░рд╣ рд╕реЗ, рдпрд╣ рд╕рдЪ рд╣реИред рд▓реЗрдХрд┐рди рдЪрд▓реЛ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдордареЛрдВ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рд╕ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдХреНрдпрд╛ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдХреБрдЫ рд╢реБрджреНрдз рдХрд╛рд░реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдЬреЛ рдмрд╛рд╣рд░реА рджреБрдирд┐рдпрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдПрдХ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдПрдХ рдирдП рд░рд╛рдЬреНрдп рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИ?
- 2. рдлрд┐рд░ рднреА, рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ? рд╣рд╛рд╕реНрдХреЗрд▓ рдореЗрдВ, рд╕рднреА рдХрд╛рд░реНрдп рд╕рд╛рдл рд╣реИрдВред рдЧрдгрдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдХреЗрд╡рд▓ рдкрд╛рд░рд┐рдд рддрд░реНрдХреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдо рдЧрдгрдирд╛ рдХреЛ "рдмрд╛рдж рдХреЗ рд▓рд┐рдП" рд╕реНрдердЧрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рд╕реЗ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдм рд╣рдо hGetContents рдХрд╣рддреЗ рд╣реИрдВ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рди рдХреЗрд╡рд▓ рддрд░реНрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕ рд╕рдордп рд╕рд┐рд╕реНрдЯрдо рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рднреА рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рд╣рдореЗрдВ "рдмрд╛рдж рдХреЗ рд▓рд┐рдП" рдЧрдгрдирд╛ рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИ, рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ? рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ, рдлрд╝рд╛рдЗрд▓ рдмрдВрдж рдХрд░реЗрдВ, рдЬрдм рдЖрдк рдХреЙрд▓ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрддреАрдд рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ (рдЬрдм рдлрд╝рд╛рдЗрд▓ рдЕрднреА рднреА рдЦреБрд▓реА рдереА), рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдкрдврд╝реЗрдВ, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ, рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░реЗрдВред
рдореИрдВ рдпрд╣ рд╕рдм рдХреНрдпреЛрдВ рд╣реВрдБ? рддреБрдо рд╕рд┐рд░реНрдл рдореБрдЭреЗ рдЧрд▓рдд рдордд рд╕рдордЭреЛред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рд╛рд╕реНрдХреЗрд▓ рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИред рдЗрд╕рдХреА рд╢реБрджреНрдзрддрд╛, рдЖрд▓рд╕реНрдп, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдЕрдЪрд╛рдирдХ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдпрд╣ "рд╕реНрд╡рдЪреНрдЫ" рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЛрдЪрд╛ рдерд╛ред рдХреБрдЫ рдорд┐рд╢реНрд░рд┐рдд рднрд╛рд╡рдирд╛ рдереА рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрдЪреНрдЫреА рд▓рдЧ рд░рд╣реА рдереА, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдпрд╣ "рдЧрдВрджрд╛" рд╣реЛ рдЧрдпрд╛ред
рд╢рд╛рдпрдж рдореИрдВ рд╕рд┐рд░реНрдл рд╡реНрдпрд╛рдореЛрд╣ рд╣реВрдВред рдореИрдВ рдЖрдкрдХреА рд░рд╛рдп, рдмрдЧ рдпрд╛ рдлреАрдЪрд░ рд╕реБрдирдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛?