Saya yakin setiap orang memiliki pengalaman ini: ada tautan di halaman yang menunjuk ke file Word di server. Ketika mesin klien telah menginstal Office, mengklik tautan tersebut akan memanggil Word untuk membuka dan menelusuri ketika mesin klien tidak memiliki Office diinstal, mengklik tautan akan muncul kotak dialog Simpan. Singkatnya, jika browser mengenali jenis file, maka secara otomatis akan membukanya; jika tidak, maka pelanggan akan diminta untuk menyimpannya. Namun terkadang kita berharap apapun jenis filenya, kita tidak ingin membukanya dan membiarkan klien menyimpannya secara langsung. Untuk mencapai persyaratan ini, untuk file yang disimpan di hard disk server, metode SendBinary dari komponen ASPUpload harus digunakan. Untuk file yang disimpan dalam database, Anda hanya perlu membuka kumpulan catatan dan kemudian mengeluarkan data biner langsung ke klien ., tetapi Anda perlu memberi tahu browser jenis MIME, nama file, dan ukuran file.
1. File di hard drive server
<%
Redupkan Unggahan, FilePath
Setel Unggah = Server.CreateObject(Persits.Upload)
FilePath = Server.MapPath(.) & / & 2003529213019.txt
'Deskripsi parameter SendBinary:
'Parameter 1: Jalur fisik file
'Parameter 2: Apakah akan mengirim tipe MIME dan informasi file lainnya ke browser
'Parameter tiga: tipe file, Anda dapat menentukan tipe MIME tertentu, tetapi umumnya Anda dapat menggunakan application/octet-binary
'Parameter 4: Biarkan klien menyimpan file atau membukanya secara langsung. Benar: simpan; Salah (default): terbuka
Unggah.SendBinary FilePath, Benar, aplikasi/oktet-biner, Benar
%>
2. File di database sisi server
<%
Redupkan objConn,objRs
Setel objConn = Server.CreateObject(ADODB.Connection)
Setel objRs = Server.CreateObject(ADODB.RecordSet)
objConn.open Driver={Microsoft Access Driver (*.mdb)};dbq= & Server.MapPath(db1.mdb)
objRs.open pilih * dari t5 di mana id=2,objConn,1,3
Response.ContentType = aplikasi/aliran oktet
Response.AddHeader Konten-Disposisi, lampiran; nama file= & objRs(nama file)
Response.AddHeader Content-Length,CStr(objRs(size)) 'Konversi CStr harus digunakan di sini
Respons.BinaryWrite objRs(file)
objRs.close
Setel objRs = tidak ada
objConn.tutup
Setel objConn = tidak ada
%>
Cara ini mengharuskan nama file dan ukuran file harus disimpan secara bersamaan saat menyimpan file! Jika nama dan ukuran file tidak ditentukan, jika browser mengenali jenis file, maka secara otomatis akan membukanya; jika tidak, klien akan diminta untuk menyimpannya!