หากมีคำถาม ขอให้ไปโพสต์ลง เว็บบอร์ดจีทูจีเน็ตดอตคอม ตัวใหม่แทนน่ะครับ

หรือติดต่อเข้ามาทาง Inbox ที่ เฟซบุ๊ค ผมครับ

หน้าหลัก
ข่าวสาร - บทความ ทั้งหมด
VB 6/VB.Net
ASP/ASP.Net
จับฉ่ายคอมพิวเตอร์
เรียนรู้ผ่าน Flash Movie
บทความที่มีผู้ตอบล่าสุด  
 RSS Feeds
 ดาวน์โหลดโปรแกรม RSS Reader ได้ที่นี่ ...   Download โปรแกรม RSS Reader

Forum - www.g2gnet.com
Webmaster - www.g2gnet.com
Visitors - Session views
 4 9 7 8 7 0 1

7 ธันวาคม พ.ศ.2549
40 Users On-Line.
Visitors - Page views
 8 2 3 6 6 2 3
1 กุมภาพันธ์ พ.ศ.2551

Google   
เว็บ g2gnet.com
ขนาดตัวอักษร:  

การหาค่าขนาดของไฟล์ด้วย Active Server Page (ASP)

Category »  ASP/ASP.Net
โดย : Webmaster เมื่อ 5/11/2549 12:32:00
(อ่าน : 10066) 

เอกสารที่เราจะพบเห็นบนอินเทอร์เน็ต หากเป็นเอกสาร HTML เพียวๆ หรือที่เราเรียกกันทั่วไปว่า Static HTML นั้น ซึ่งจะไม่มีลูกเล่นอะไรเลย (ประมาณว่าเป็นเอกสารทื่อๆนั่นแหละ ซึ่งอาจทำให้บางคน มีมุมมอง หรือ ทัศนคติ และ อคติที่ไม่ดีกับการทำงานประเภทนี้ หลงผิดคิดไปว่าการทำเว็ปเพจ ก็คงจะเหมือนๆกับงานการพิมพ์เอกสาร Word เท่านั้นเอง ซึ่งคงไม่ต้องใช้ความรู้ ความคิด สักเท่าไรนัก) นอกเสียจากว่าผู้จัดทำเว็ปเพจอาจจะแทรกฟังค์ชั่นของ Java Script ลงไปเพิ่มเติม เช่น แสดงวันที่ เวลา หรือ ฟังค์ชั่นที่สามารถทำให้เว็ปเพจเกิดการเปลี่ยนแปลงในทีละหน้าได้ หรือ เมาส์เคลื่อนที่ไปทิศทางไหน ตัวอักษรก็จะวิ่งตามไปด้วย เหล่านี้เป็นต้น แต่นั่นเราก็จะเห็นได้ว่า็ ยังไม่สามารถที่จะเรียกเว็ปประเภทเหล่านี้
ให้เป็นไปในลักษณะของ Dynamic HTML (มีการเปลี่ยนแปลง) อย่างเต็มรูปแบบได้ ดังนั้นเราจึงจำเป็นต้องการสิ่งที่จะสามารถติดต่อกับสภาพแวดล้อมภายนอกได้ เช่น จากผู้ใช้ จากแฟ้มข้อมูล จากฐานข้อมูล หรือ แม้กระทั่งจาก Server เอง โดยอาศัยอ็อบเจ็กต์ต่างๆ ซึ่งในบทความนี้ผมจะขอกล่าวถึงการนำ Script อย่างง่ายๆ อันเป็นพื้นฐาน ของ Active Server Page - ASP เพื่อให้ท่านทั้งหลายได้นำไปประยุกต์ใช้ในโอกาสต่อไปน่ะครับ

Script Object
เป็นอ็อบเจ็กต์ที่มีอยู่ในตัวภาษาเอง ซึ่งอ็อบเจ็กต์ที่ใช้อยู่ในส่วนของ Script Object ได้แก่

  • FileSystem Object
  • TextStream Object

    ทั้งสอง Object นี้ใช้ในการจัดการเกี่ยวกับเรื่องของระบบไฟล์บน Server เริ่มตั้งแต่เรื่อง ไดรฟ์ โฟลเดอร์ รวมไปถึงแฟ้มข้อมูลต่างๆ

    FileSystem Object จะช่วยให้เราสามารถจัดการกับไดรฟ์ โฟลเดอร์ และ แฟ้มข้อมูลบน Hard Drive ก่อนที่จะใช้งาน FileSystem Object นั้นจะต้องมีการสร้าง Object ขึ้นมาก่อน โดยใช้คำสั่งในลักษณะนี้ คือ

    <%
    Dim FileSystem
    Set FileSystem = Server.CreateObject("Scripting.FileSystemObject")
    %>

    การสร้าง Object ดังตัวอย่างนี้ เป็นการสร้าง Object ประเภท FileSystem Object โดย FileSystem Object นี้เป็นประเภทของ Object แบบ Script (สังเกตุได้จากการใช้ค่าคงที่ "Script.FileSystemObject") โดยตัวแปรของ Object นี้จะมีชื่อว่า FileSystem ตัวแปร FileSystem ที่เราประกาศขึ้นมานั้น สามารถจัดการเกี่ยวกับ แฟ้มข้อมูล โฟลเดอร์ และ ไดรฟ์ โดยมี เมธอด หรือ Method (วิธีการที่เราสามารถจัดการกับ Object นั้น) ที่น่าสนใจดังต่อไปนี้

 

CopyFile, MoveFile
ใช้สำเนา หรือ ย้ายแฟ้มข้อมูล จากที่หนึ่งไปยังอีกที่หนึ่ง

CopyFolder, MoveFolder
ใช้สำเนา หรือ ย้ายโฟลเดอร์ จากที่หนึ่งไปยังอีกที่หนึ่ง

CreateFolder
ใช้สร้างโฟลเดอร์

DeleteFile, DeleteFolder
ใช้ในการลบแฟ้มข้อมูล และ โฟลเดอร์

DriveExists, FolderExists, FileExists
ใช้ในการตรวจสอบว่าไดรฟ์ โฟลเดอร์ หรือ แฟ้มข้อมูลมีอยู่หรือไม่

GetDrives, GetFolder, GetFile
ใช้ในการให้จัดการเกี่ยวกับไดรฟ์ โฟลเดอร์ หรือ แฟ้มข้อมูล

เรามาลองดูตัวอย่างสักตัวนึงก็คือ การจัดการกับไฟล์ หรือ GetFile ดูน่ะครับผม เช่น

GetFile("C:\Test.Txt")

จะให้ค่า Object แบบไฟล์ ที่เป็นตัวแทนของแฟ้มข้อมูล Test.Txt ในโฟลเดอร์รากในไดรฟ์ C

หรือตัวอย่างที่ใช้ในงานจริง โดยการหาค่าขนาดของไฟล์เพื่อนำมาแสดงผล

ฟังค์ชั่นที่ใช้ในการหาค่าขนาดของไฟล์ เราอาศัยตัวแปร Get_File เป็น Parameter รับค่าที่ส่งมาจากการเรียกใช้งานของฟังค์ชั่น

Function getSize(Get_File)

Dim fsObj, Auto ' ประกาศตัวแปรก่อนการใช้งาน สำหรับ ASP เราไม่จำเป็นต้องกำหนด หรือ ระบุชนิดของข้อมูล
Set fsObj = Server.CreateObject("Scripting.FileSystemObject")
Set Auto = fsObj.GetFile(Server.Mappath(Get_File))
getSize = Auto.Size ' ส่งค่ากลับผ่านทางชื่อฟังค์ชั่นของตัวมันเอง
End Function

' นำไปวางไว้่ตรงตำแหน่งที่คุณต้องการ เพื่อหาค่าขนาดของไฟล์ ในตัวอย่างนี้ชื่อว่า FileTest นามสกุล .Dat

<% Response.Write getSize("FileTest.DAT") %>


จี ทู จี เน็ต ดอต คอม - g2gNet Dot Com
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์ 0407314800231
CopyLeft © 2004 - 2099 g2gNet.Com All rights reserved.
Email: [email protected] หรือ โทร. 08-6862-6560