Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π˜ΡΠΊΡƒΡΡΡ‚Π²ΠΎ программирования для UnixΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 44

Автор Π Π΅ΠΉΠΌΠΎΠ½Π΄ Π­Ρ€ΠΈΠΊ Π‘Ρ‚ΠΈΠ²Π΅Π½

PNG-Ρ„Π°ΠΉΠ» состоит ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… прСдставлСн Π² ΡΠ°ΠΌΠΎΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΈ начинаСтся с названия Ρ‚ΠΈΠΏΠ° Π±Π»ΠΎΠΊΠ° ΠΈ Π΄Π»ΠΈΠ½Ρ‹ Π±Π»ΠΎΠΊΠ°. Благодаря Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅Ρ‚ нСобходимости Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² PNG-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ вСрсии. НовыС Ρ‚ΠΈΠΏΡ‹ Π±Π»ΠΎΠΊΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² любоС врСмя. РСгистр ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Ρ‹ Π² ΠΈΠΌΠ΅Π½ΠΈ Ρ‚ΠΈΠΏΠ° сообщаСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅ΠΌΡƒ PNG ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ ΠΎ возмоТности бСзопасно ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ PNG-Ρ„Π°ΠΉΠ»Π° Ρ‚Π°ΠΊΠΆΠ΅ заслуТиваСт изучСния. Он ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½ΠΎ спроСктирован, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… распространСнных Π²ΠΈΠ΄ΠΎΠ² поврСТдСния Ρ„Π°ΠΉΠ»ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² 7-Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠ°Π½Π°Π»Π°Ρ… ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ отсСчСнии символов CR ΠΈ LF).

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ PNG ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ описанный. Он Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠ³ Π±Ρ‹ ΠΏΠΎΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ эталоном ΠΏΡ€ΠΈ написании стандартов Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ².

5.2. ΠœΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

ΠœΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… прСдставляСт собой Π½Π°Π±ΠΎΡ€ синтаксичСских ΠΈ лСксичСских соглашСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π»ΠΈΠ±ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ стандартизированы, Π»ΠΈΠ±ΠΎ достаточно Ρ…ΠΎΡ€ΠΎΡˆΠΎ "ΡƒΠΊΠΎΡ€Π΅Π½ΠΈΠ»ΠΈΡΡŒ" Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΠΈ поэтому ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ стандартныС слуТСбныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для осущСствлСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³Π° ΠΈ Π΄Π΅ΠΌΠ°Ρ€ΡˆΠ°Π»ΠΈΠ½Π³Π°.

Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Unix Ρ€Π°Π·Π²ΠΈΠ»ΠΈΡΡŒ ΠΈΠ»ΠΈ Π±Ρ‹Π»ΠΈ заимствованы ΠΌΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹Π΅ для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ спСктра ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡. Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся использованиС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… (вмСсто ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ частного Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°) Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с количСства частного ΠΊΠΎΠ΄Π° для синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ создания Ρ„Π°ΠΉΠ»ΠΎΠ², написания ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»ΡƒΠΆΠ΅Π±Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. Однако Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ прСимущСством являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ Π΄Π°ΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡ… ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ сокращаСт ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ, связанныС с ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

ΠŸΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ ссылка Π½Π° "Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ срСдства Unix" ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ grep(1), sed(1), awk(1), tr(1) ΠΈ cut( 1) для выполнСния поиска ΠΈ прСобразования тСкста. Perl ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки сцСнариСв ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° построчных Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹ΠΌΠΈ срСдствами.

НиТС прСдставлСны стандартныС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Π² качСствС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ.

5.2.1. DSV-ΡΡ‚ΠΈΠ»ΡŒ

АббрСвиатура DSV Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Delimiter-Separated Values (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ с раздСлитСлями Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ). Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ рассматривался Ρ„Π°ΠΉΠ» /Π΅tc/passwd, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ DSV-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ с символом двоСточия Π² качСствС раздСлитСля Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Unix Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ являСтся стандартным Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ для DSV-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… значСния ΠΏΠΎΠ»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° /etc/passwd (ΠΎΠ΄Π½Π° запись Π² строкС, поля Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ двоСточиями) являСтся вСсьма Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ Π² Unix ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π΄Π°Π½Π½Ρ‹Ρ…, прСдставлСнных Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†. Π”Ρ€ΡƒΠ³ΠΈΠ΅ классичСскиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя Ρ„Π°ΠΉΠ» /etc/group, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΈ Ρ„Π°ΠΉΠ» /etc/inittab, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ примСняСтся для управлСния запуском ΠΈ остановом слуТСбных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Unix Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… уровнях выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы.

ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°ΠΊΠΎΠΌ стилС Ρ„Π°ΠΉΠ»Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π² поля Π΄Π°Π½Π½Ρ‹Ρ… символов двоСточия, ΠΏΡ€Π΅Π΄Π²Π°Ρ€Π΅Π½Π½Ρ‹Ρ… символами ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹. Π’ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰Π΅ΠΌ смыслС оТидаСтся, Ρ‡Ρ‚ΠΎ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ записи ΠΏΡƒΡ‚Π΅ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π½Π°ΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ для символов Π½Π°Ρ‡Π°Π»Π° Π½ΠΎΠ²ΠΎΠΉ строки ΠΈ позволяСт Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, содСрТащиС Π½Π΅ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌΡ‹Π΅ символы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π·Π½Π°ΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² стилС Π‘.

Π”Π°Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ подходящим Π² ситуациях, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ, снабТСны ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ (ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠΎΠ»Π΅), Π° записи, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ (ΠΌΠ΅Π½Π΅Π΅ 80 символов). ΠžΠΏΠΈΡΡ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ обрабатываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств Unix.

Иногда Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ ΠΏΠΎΠ»Π΅ΠΉ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ символ ΠΊΠ°Π½Π°Π»Π° (|) ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ символ ASCII NUL. Π’ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Unix старой ΡˆΠΊΠΎΠ»Ρ‹ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ символы табуляции β€” Ρ„ΠΎΡ€ΠΌΠ° прСдставлСния, которая ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π° Π² установках ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ cut(1) ΠΈ paste(1). Однако постСпСнно данная Ρ„ΠΎΡ€ΠΌΠ° прСдставлСния измСнялась, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² осознавали мноТСство ΠΌΠ΅Π»ΠΊΠΈΡ… нСудобств, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… Π²Π²ΠΈΠ΄Ρƒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ символы табуляции ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Π½Π΅Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΌΡ‹.

DSV-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для Unix являСтся Ρ‚Π΅ΠΌ ΠΆΠ΅, Ρ‡Π΅ΠΌ CSV (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ запятыми) для Microsoft Windows ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… систСм Π²Π½Π΅ ΠΌΠΈΡ€Π° Unix. Π€ΠΎΡ€ΠΌΠ°Ρ‚ CSV (поля Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ запятыми, для Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСдставлСния запятых ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ строки Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ) Π² Unix встрСчаСтся нСчасто.

Π’ сущности, Microsoft-вСрсия CSV прСдставляСт собой Π°Π·Π±ΡƒΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½Π΅ слСдуСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкстовый Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, связанныС с Π½ΠΈΠΌ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с ситуации, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ символ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС запятая) находится Π²Π½ΡƒΡ‚Ρ€ΠΈ поля. Π’ Unix Π² Ρ‚Π°ΠΊΠΎΠΌ случаС для Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСдставлСния раздСлитСля ΠΏΠ΅Ρ€Π΅Π΄ Π½ΠΈΠΌ Π±Ρ‹Π» Π±Ρ‹ вставлСн символ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹, Π° Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½Π°Ρ обратная косая Ρ‡Π΅Ρ€Ρ‚Π° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ»Π°ΡΡŒ Π±Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹. Вакая конструкция создаСт СдинствСнный частный случай (Π·Π½Π°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π²ΠΎ врСмя синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° Ρ„Π°ΠΉΠ»Π°, ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ СдинствСнного дСйствия, ΠΊΠΎΠ³Π΄Π° Ρ‚Π°ΠΊΠΎΠΉ символ Π½Π°ΠΉΠ΄Π΅Π½, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ β€” ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ символ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ. Π”Π°Π½Π½ΠΎΠ΅ дСйствиС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ символ, Π½ΠΎ ΠΈ прСдоставляСт способ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π½Π°ΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ символов Π½ΠΎΠ²ΠΎΠΉ строки Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ…ΠΈΡ‰Ρ€Π΅Π½ΠΈΠΉ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ CSV Ρ†Π΅Π»ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π² случаС Ссли ΠΎΠ½ΠΎ содСрТит символ-Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ. Если ΠΏΠΎΠ»Π΅ содСрТит Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π΅Π³ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ Π² ΠΏΠΎΠ»Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ Π΄Π²Π°ΠΆΠ΄Ρ‹, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‚ ΠΏΠΎΠ»Π΅.

БущСствуСт Π΄Π²Π° Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° роста числа частных случаСв. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, возрастаСт ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° (ΠΈ Π΅Π³ΠΎ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊ ошибкам). Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π²Π²ΠΈΠ΄Ρƒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° слоТны ΠΈ нСпрСдусмотрСны, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ расходятся Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… случаСв. Иногда ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ строки ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡƒΡ‚Π΅ΠΌ Π½Π°Ρ‡Π°Π»Π° послСднСго поля строки с Π½Π΅Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°Ρ…. Microsoft ΠΈΠΌΠ΅Π΅Ρ‚ нСсовмСстимыС вСрсии CSV-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ своими собствСнными прилоТСниями, Π° Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ вСрсиями ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния (ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Excel).

5.2.2. Π€ΠΎΡ€ΠΌΠ°Ρ‚ RFC 822

ΠœΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ RFC 822 происходит ΠΎΡ‚ тСкстового Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° сообщСний элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹ Π² Internet. RFC 822 являСтся основным Internet RFC-стандартом, описы- , Π²Π°ΡŽΡ‰ΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ (впослСдствии Π·Π°ΠΌΠ΅Π½Π΅Π½ RFC 2822). Π€ΠΎΡ€ΠΌΠ°Ρ‚ MIME (Multipurpose Internet Media Extension β€” ΠΌΠ½ΠΎΠ³ΠΎΡ†Π΅Π»Π΅Π²Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Internet) обСспСчиваСт способ внСдрСния Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€ΡŒ сообщСний Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° RFC 822. (Web-поиск ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Π»ΠΈΠ±ΠΎ ΠΈΠ· упомянутых Π½Π°Π·Π²Π°Π½ΠΈΠΉ прСдоставит ссылки Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ стандарты).

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ записСй хранятся ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π² строкС, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΊΠ°ΠΌ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ сходство с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ сообщС- ; ния, ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ символом двоСточия с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ. ИмСна ΠΏΠΎΠ»Π΅ΠΉ ! Π½Π΅ содСрТат ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ², Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ вмСсто ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ дСфис. Π—Π½Π°Ρ‡Π΅Π½ΠΈ- j Π΅ΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° являСтся вся ΠΎΡΡ‚Π°Π²ΡˆΠ°ΡΡΡ строка Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π° | ΠΈ символа Π½ΠΎΠ²ΠΎΠΉ строки. ЀизичСская строка, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π°ΡΡΡ с символа табуляции '

ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»Π°, интСрпрСтируСтся ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ логичСской строки. ΠŸΡƒΡΡ‚Π°Ρ строка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒ записи, Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π»Π΅Π΅ слСдуСт нСструктурированный тСкст.

Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Unix ΠΌΠ΅Ρ‚Π°Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ RFC 822 являСтся Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для классифицированных сообщСний ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², Π±Π»ΠΈΠ·ΠΊΠΎ сопоставимых с элСктронной ΠΏΠΎΡ‡Ρ‚ΠΎΠΉ. Π‘ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для записСй с ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠΌΡΡ Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ иСрархия Π΄Π°Π½Π½Ρ‹Ρ… проста (Π±Π΅Π· рСкурсии ΠΈΠ»ΠΈ Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠΉ структуры).