ເນື້ອໃນ

# ຄຳສັ່ງ Input#

ອ່ານຂໍ້ມູນຈາກໄຟລ໌ລຳດັບ (sequential file) ທີ່ເປີດຢູ່.

### ໄວຍາກອນ:

    Input #fileNum {,|;} var1 [, var2 [, ...]]

### ພາຣາມິເຕີ:

fileNum: ໝາຍເລກຂອງໄຟລ໌ທີ່ມີຂໍ້ມູນທີ່ທ່ານຕ້ອງການອ່ານ. ໄຟລ໌ຕ້ອງຖືກເປີດດ້ວຍຄຳສັ່ງ Open ໂດຍໃຊ້ຄຳສຳຄັນ INPUT.

var: ຕົວປ່ຽນຕົວເລກ ຫຼື ສະຕຣິງ ທີ່ທ່ານກຳນົດຄ່າທີ່ອ່ານໄດ້ຈາກໄຟລ໌ທີ່ເປີດຢູ່ໃຫ້.

ຄຳສັ່ງ Input# ອ່ານຄ່າຕົວເລກ ຫຼື ສະຕຣິງຈາກໄຟລ໌ທີ່ເປີດຢູ່ ແລະ ກຳນົດຂໍ້ມູນໃຫ້ກັບຕົວປ່ຽນໜຶ່ງຕົວ ຫຼື ຫຼາຍກວ່າ. ຕົວປ່ຽນຕົວເລກຈະຖືກອ່ານຈົນກວ່າຈະພົບເຄື່ອງໝາຍການຂຶ້ນແຖວໃໝ່ (Asc=13), ການເລື່ອນແຖວ (Asc=10), ຊ່ອງວ່າງ, ຫຼື ເຄື່ອງໝາຍຈຸດ. ຕົວປ່ຽນສະຕຣິງຈະຖືກອ່ານຈົນກວ່າຈະພົບເຄື່ອງໝາຍການຂຶ້ນແຖວໃໝ່ (Asc=13), ການເລື່ອນແຖວ (Asc=10), ຫຼື ເຄື່ອງໝາຍຈຸດ.

ຂໍ້ມູນ ແລະ ປະເພດຂໍ້ມູນໃນໄຟລ໌ທີ່ເປີດຢູ່ຕ້ອງປາກົດຕາມລຳດັບດຽວກັນກັບຕົວປ່ຽນທີ່ຖືກສົ່ງໃນພາຣາມິເຕີ "var". ຫາກທ່ານກຳນົດຄ່າທີ່ບໍ່ແມ່ນຕົວເລກໃຫ້ກັບຕົວປ່ຽນຕົວເລກ, "var" ຈະຖືກກຳນົດຄ່າເປັນ "0".

ລະຄອນ (records) ທີ່ແຍກດ້ວຍເຄື່ອງໝາຍຈຸດ ບໍ່ສາມາດກຳນົດໃຫ້ກັບຕົວປ່ຽນສະຕຣິງໄດ້. ເຄື່ອງໝາຍຄຳເວົ້າ (") ໃນໄຟລ໌ຈະຖືກລະເວັ້ນເຊັ່ນກັນ. ຫາກທ່ານຕ້ອງການອ່ານຕົວອັກສອນເຫຼົ່ານີ້ຈາກໄຟລ໌, ໃຫ້ໃຊ້ຄຳສັ່ງ Line Input# ເພື່ອອ່ານໄຟລ໌ຂໍ້ຄວາມບໍລິສຸດ (ໄຟລ໌ທີ່ມີແຕ່ຕົວອັກສອນທີ່ພິມໄດ້) ເທື່ອລະແຖວ.

ຫາກຮອດທ້າຍໄຟລ໌ໃນຂະນະທີ່ກຳນົດການອ່ານອົງປະກອບຂໍ້ມູນ, ຈະເກີດຂໍ້ຜິດພາດ ແລະ ຂະບວນການຈະຖືກຍົກເລີກ.

### ຕົວຢ່າງ:

    Sub ExampleWorkWithAFile
        Dim iCount As Integer, sFileName As String
        Dim sName As String, sValue As Integer
        sFileName = "C:\Users\ThisUser\data.txt"
        iCount = Freefile
        ' ຂຽນຂໍ້ມູນ (ເຊິ່ງພວກເຮົາຈະອ່ານໃນພາຍຫຼັງດ້ວຍ Input) ລົງໃນໄຟລ໌
        Open sFileName For Output As iCount
        sName = "Hamburg" : sValue = 200
        Write #iCount, sName, sValue
        sName = "New York" : sValue = 300
        Write #iCount; sName, sValue
        sName = "Miami" : sValue = 459
        Write #iCount, sName, sValue
        Close #iCount
        ' ອ່ານໄຟລ໌ຂໍ້ມູນໂດຍໃຊ້ Input
        iCount = Freefile
        Open sFileName For Input As iCount
        Input #iCount, sName, sValue
        MsgBox sName & " " & sValue
        Input #iCount; sName, sValue
        MsgBox sName & " " & sValue
        Input #iCount, sName, sValue
        MsgBox sName & " " & sValue
        Close #iCount
    End Sub

ຫົວຂໍ້ທີ່ກ່ຽວຂ້ອງ

ຄຳສັ່ງ Close

ຄຳສັ່ງ Open

ຄຳສັ່ງ Print#

ຄຳສັ່ງ Write#