ÆÄÀÏ °´Ã¼ [AHK_L 42+]

ÆÄÀÏ ÀÔ/Ãâ·ÂÀ» À§ÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù. FileOpenÀÌ ÀÌ À¯ÇüÀÇ °´Ã¼¸¦ µ¹·ÁÁÝ´Ï´Ù.

Read

¹®ÀÚ¿­À» ÆÄÀϷκÎÅÍ Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

String := File.Read([Characters])
CharactersÀÐÀ» ¹®ÀÚÀÇ ÃÖ´ë °³¼ö. »ý·«Çϸé, ÆÄÀÏ ³ª¸ÓÁö¸¦ Àо ÇϳªÀÇ ¹®ÀÚ¿­·Î µ¹·ÁÁÝ´Ï´Ù. ÄÜ¼Ö ¹öÆÛ³ª ÆÄÀÌÇÁ °°ÀÌ Æ÷ÀÎÅ͸¦ ¾ÕµÚ·Î À̵¿½Ãų ¼ö ¾ø´Â ÇÚµé·ÎºÎÅÍ ÆÄÀÏ °´Ã¼°¡ »ý¼ºµÇ¾úÀ» °æ¿ì, ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«ÇÏ¸é ¸Þ½îµå°¡ ½ÇÆÐÇϰųª ¶Ç´Â ÇöÀç »ç¿ëÀÌ °¡´ÉÇÑ µ¥ÀÌÅ͸¸ µ¹·ÁÁÙ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
Returns¹®ÀÚ¿­.

Write

¹®ÀÚ¿­À» ÆÄÀÏ¿¡ ¾²°í ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

File.Write(String)
String¹®ÀÚ¿­.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö (¹®ÀÚ °³¼ö°¡ ¾Æ´Ô).

ReadLine

ÆÄÀϷκÎÅÍ ÅؽºÆ® ÇÑ ÁÙÀ» Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

Line := File.ReadLine()
ReturnsÅؽºÆ® ÇÑ ÁÙ. ¿©±â¿¡´Â ÆÄÀÏ°ú ±× ÆÄÀÏÀ» ¿©´Â µ¥ »ç¿ëµÈ EOL Ç÷¡±×¿¡ µû¶ó `n, `r`n ¶Ç´Â `rÀÌ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù.

WriteLine

¹®ÀÚ¿­À» ¾¹´Ï´Ù. ÆÄÀÏÀ» ¿©´Â µ¥ »ç¿ëµÈ Ç÷¡±×¿¡ µû¶ó ´ÙÀ½¿¡ `n ¶Ç´Â `r`nÀÌ µû¶ó¿É´Ï´Ù. ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

File.WriteLine([String])
String¼±ÅÃÀûÀÎ ¹®ÀÚ¿­.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö (¹®ÀÚ °³¼ö°¡ ¾Æ´Ô).

ReadNum

ÁöÁ¤ÇÑ ¹ÙÀÌÆ® °³¼ö¸¸Å­ ÆÄÀϷκÎÅÍ Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

Num := File.ReadNumType()
NumType´ÙÀ½ Áß Çϳª¸¦ ÇÔ¼ö À̸§¿¡ Á÷Á¢ ÁöÁ¤ÇÕ´Ï´Ù:
UInt, Int, Int64, Short, UShort, Char, UChar, Double, ¶Ç´Â Float.
Returns¼º°øÇÏ¸é ¹ÙÀÌÆ® °³¼ö, ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

WriteNum

ÁöÁ¤µÈ ¹ÙÀÌÆ® °³¼ö ¸¸Å­ ¾²°í ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

File.WriteNumType(Num)
NumType´ÙÀ½ Áß Çϳª¸¦ ÇÔ¼ö À̸§¿¡ Á÷Á¢ ÁöÁ¤ÇÕ´Ï´Ù:
UInt, Int, Int64, Short, UShort, Char, UChar, Double, ¶Ç´Â Float.
Num¼ýÀÚ.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö. ¿¹¸¦ µé¸é WriteUInt´Â ¼º°øÇϸé 4¸¦ µ¹·ÁÁÝ´Ï´Ù.

RawRead

³¯ ÀÌÁø µ¥ÀÌÅ͸¦ ÆÄÀϷκÎÅÍ ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÔ´Ï´Ù. º¯¼ö°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, ÇÊ¿äÇÑ °æ¿ì ÀÚµ¿À¸·Î È®´ëµË´Ï´Ù.

File.RawRead(VarOrAddress, Bytes)
VarOrAddressµ¥ÀÌÅÍ°¡ º¹»çµÉ º¯¼ö ¶Ç´Â ¸Þ¸ð¸® ÁÖ¼Ò. »ç¿ë¹ýÀº NumGet°ú ºñ½ÁÇÕ´Ï´Ù.
BytesÀÐÀ» ¹ÙÀÌÆ®ÀÇ ÃÖ´ë °³¼ö.
ReturnsÀÐÀº ¹ÙÀÌÆ® °³¼ö.

RawWrite

³¯ ÀÌÁø µ¥ÀÌÅ͸¦ ÆÄÀÏ¿¡ ¾¹´Ï´Ù.

File.RawWrite(VarOrAddress, Bytes)
VarOrAddressµ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â º¯¼ö ¶Ç´Â ¸Þ¸ð¸®ÀÇ µ¥ÀÌÅÍ ÁÖ¼Ò. »ç¿ë¹ýÀº NumPut°ú ºñ½ÁÇÕ´Ï´Ù.
Bytes¾µ ¹ÙÀÌÆ® °³¼ö.
ReturnsÀÐÀº ¹ÙÀÌÆ® °³¼ö.

Seek

ÆÄÀÏ Æ÷ÀÎÅ͸¦ À̵¿½Ãŵ´Ï´Ù.

File.Seek(Distance [, Origin = 0])
File.Position := Distance
File.Pos := Distance
Distance¹ÙÀÌÆ® ´ÜÀ§·Î À̵¿ÇÒ °Å¸®. °ªÀÌ ³·À» ¼ö·Ï ÆÄÀÏÀÇ ¾Õ ÂÊ¿¡ °¡±õ½À´Ï´Ù.
OriginÆÄÀÏ Æ÷ÀÎÅÍÀÇ À̵¿ ½ÃÀÛ ÁöÁ¡. ¹Ýµå½Ã ´ÙÀ½ Áß Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù:
  • 0 (SEEK_SET): ÆÄÀÏÀÇ Ã³À½. Distance´Â 0ÀÌ»óÀ̾î¾ß ÇÕ´Ï´Ù.
  • 1 (SEEK_CUR): ÆÄÀÏ Æ÷ÀÎÅÍÀÇ ÇöÀç À§Ä¡.
  • 2 (SEEK_END): ÆÄÀÏ ³¡. Distance´Â º¸Åë À½ÀÇ Á¤¼öÀÔ´Ï´Ù.
»ý·«Çϸé, Distance°¡ À½ÀÇ Á¤¼öÀÏ ¶§ Origin´Â SEEK_ENDÀÌ ±âº»°ªÀÌ°í ±×·¸Áö ¾ÊÀ¸¸é SEEK_SETÀÌ ±âº»°ªÀÔ´Ï´Ù.
Returns¼º°øÇϸé 0-¾Æ´Ñ °ªÀ», ±×·¸Áö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù.

Tell

Pos := File.Tell()
Pos := File.Position
Pos := File.Pos
ReturnsÆÄÀÏ Æ÷ÀÎÅÍÀÇ ÇöÀç À§Ä¡. 0À̸é ÆÄÀÏÀÇ Ã³À½ÀÔ´Ï´Ù.

Length

ÆÄÀÏÀÇ Å©±â¸¦ ¿­¶÷Çϰųª ¼³Á¤ÇÕ´Ï´Ù.

FileSize := File.Length
File.Length := NewSize
NewSize¹ÙÀÌÆ® ´ÜÀ§·Î, ÆÄÀÏÀÇ »õ Å©±â.
Returns¹ÙÀÌÆ® ´ÜÀ§·Î, ÆÄÀÏÀÇ Å©±â.

ÀÌ Æ¯¼ºÀº ½ÇÁ¦ ÆÄÀÏ¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÆÄÀÏ °´Ã¼°¡ ÆÄÀÌÇÁ¸¦ °¡¸®Å°´Â ÇÚµé·ÎºÎÅÍ »ý¼ºµÇ¾ú´Ù¸é, ÆÄÀÌÇÁÀÇ ³»ºÎ ¹öÆÛ¿¡¼­ ÇöÀç »ç¿ë°¡´ÉÇÑ ¾ç ¸¸Å­ÀÇ µ¥ÀÌÅ͸¦ µ¹·ÁÁÙ ¼ö ÀÖÁö¸¸, ÀÌ ÇàÀ§´Â º¸ÁõÇÏÁö ¾Ê½À´Ï´Ù.

AtEOF

IsAtEOF := File.AtEOF
ReturnsÆÄÀÏ Æ÷ÀÎÅÍ°¡ ÆÄÀÏÀÇ ³¡¿¡ µµ´ÞÇϸé 0 ¾Æ´Ñ °ªÀ», ±×·¸Áö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù.

ÀÌ Æ¯¼ºÀº ½ÇÁ¦ ÆÄÀÏ¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÄÜ¼Ö ¹öÆÛ³ª ÆÄÀÌÇÁ °°Àº Æ÷ÀÎÅÍ-À̵¿ ¾ø´Â ÀåÄ¡¸¦ °¡¸®Å°´Â ÇÚµé·ÎºÎÅÍ ÆÄÀÏ °´Ã¼°¡ »ý¼ºµÇ¾ú´Ù¸é, ¹Ýȯ °ªÀº Àǹ̰¡ ¾ø½À´Ï´Ù. ±×·± ÀåÄ¡´Â ³í¸®ÀûÀ¸·Î "ÆÄÀÏ ³¡"ÀÌ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

Close

ÆÄÀÏÀ» ´Ý½À´Ï´Ù. ij½¬¿¡ ÀÖ´Â µ¥ÀÌÅ͸¦ µð½ºÅ©·Î ºñ¿ó´Ï´Ù. °øÀ¯ Àá±ÝÀ» ÇØÁ¦ÇÕ´Ï´Ù. °´Ã¼°¡ ÇØÁ¦µÇ¸é ÀÚµ¿À¸·Î ÆÄÀÏÀÌ ´ÝÈ÷Áö¸¸, °¡´ÉÇÏ¸é »¡¸® ´Ý±â¸¦ ±ÇÀåÇÕ´Ï´Ù.

File.Close()

¸Å°³º¯¼öµµ ¾ø°í ¹Ýȯ °ªµµ ¾ø½À´Ï´Ù.

Encoding

ÀÌ ÆÄÀÏ °´Ã¼°¡ »ç¿ëÇÏ´Â ÅؽºÆ® ÀÎÄÚµùÀ» ¿­¶÷Çϰųª ¼³Á¤ÇÕ´Ï´Ù.

Encoding := File.Encoding
File.Encoding := Encoding
Encoding¼ýÀÚ ÄÚµå ÆäÀÌÁö ½Äº°ÀÚ (MSDN ÂüÁ¶) ¶Ç´Â ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª:
  • UTF-8: Unicode UTF-8, CP65001¿Í µ¿µîÇÔ.
  • UTF-16: Unicode UTF-16 ÀÛÀº °ª Á¾·áÇü ¹ÙÀÌÆ® ¼ø¼­, CP1200¿Í µ¿µîÇÔ.
  • CPnnn: ¼ýÄ¡ ½Äº°ÀÚ nnn¸¦ °¡Áø ÄÚµå ÆäÀÌÁö.

ÀÎÄÚµùÀº -RAW Á¢¹Ì»ç¸¦ ºÙÀÌ¸é °ªÀ» µ¹·ÁÁÖÁö ¾Ê½À´Ï´Ù. ÆÄÀÏÀÌ ¾î¶»°Ô ¿­·ÈµçÁö ¶Ç´Â ¾È¿¡ ¹ÙÀÌÆ® ¼ø¼­ Ç¥½Ä (BOM)ÀÌ µé¾î ÀÖµç ¸»µç »ó°üÇÏÁö ¾Ê½À´Ï´Ù. ÀÎÄÚµù ¼³Á¤¸¸À¸·Î BOMÀÌ ºÙ°Å³ª Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù. BOMÀº º¸Åë óÀ½ ÆÄÀÏÀÌ »ý¼ºµÉ ¶§ ¾º¿©Áý´Ï´Ù.

v1.1.15.04+¿¡¼­, ÀÎÄÚµùÀ» UTF-8-RAWÀ̳ª UTF-16-RAWÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª -RAW Á¢¹Ì»ç´Â ¹«½ÃµË´Ï´Ù. ÀÌÀü ¹öÀü¿¡¼­, UTF-8-RAW¿Í UTF-16-RAWÀº ¹«È¿ÇÑ 8-ºñÆ® ÀÎÄÚµùó·³ ÇàÀ§ÇϹǷÎ, ¸ðµç ºñ-ASCII ¹®ÀÚµéÀÌ Æó±âµË´Ï´Ù. ÀÌ°ÍÀº ¿ÀÁ÷ File.Encoding¿¡¸¸ Àû¿ëµÇÁö, FileOpen()¿¡´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

__Handle

File.__Handle
Returns½Ã½ºÅÛ ÆÄÀÏ ÇÚµé, DllCall°ú ÇÔ²² »ç¿ëÇÏ´Â °ÍÀÌ ¸ñÀûÀÔ´Ï´Ù. CreateFileÀ» ÂüÁ¶ÇϽʽÿÀ.

ÆÄÀÏ °´Ã¼´Â ³»ºÎÀûÀ¸·Î Àбâ¿Í ¾²±â¸¦ ¹öÆÛ Ã³¸®ÇÕ´Ï´Ù. µ¥ÀÌÅÍ°¡ °´Ã¼ÀÇ ³»ºÎ ¹öÆÛ¿¡ ¾º¿©Á³´Ù¸é, ÇÚµéÀ» ¹ÝȯÇϱâ Àü¿¡ µð½ºÅ©¿¡ ½á¾ß ÇÕ´Ï´Ù. ¹öÆÛ¿¡ ÆÄÀϷκÎÅÍ ÀÐÀº µ¥ÀÌÅÍ°¡ µé¾î ÀÖ´Ù¸é, ±× µ¥ÀÌÅÍ´Â Æó±âµÇ°í File.Pos°¡ °¡¸®Å°´Â ½ÇÁ¦ ÆÄÀÏ Æ÷ÀÎÅÍ´Â ³í¸® À§Ä¡·Î Àç¼³Á¤µË´Ï´Ù.