Jak číst a zobrazit binární Data v prostředí ASP

Souhrn

Tento článek ukazuje, jak číst a zobrazit binární data pomocí Active Server Pages.


Mnoho vývojáři ocení snadné použití Scripting.FileSystemObject otevřete soubor ve formátu ASCII a zobrazte její obsah v aplikaci Microsoft Word nebo Microsoft Excel z aplikace Internet Explorer. V počátku aktuální prostředí ASP neposkytuje přímo srovnatelné objekty pro čtení souborů, které obsahují binární data, například list aplikace Excel s makry, soubor aplikací Adobe Acrobat (PDF), obrázek GIF nebo všechny soubory, které obsahují binární data. Nicméně vývojář ASP můžete napsat vlastní obchodní objekt nebo součást, která přidá tuto funkci.

Další informace

Část I obsahuje kód ASP, který přijímá a potom zobrazí binární soubor pomocí příslušné MIME zadejte a část II ukazuje, jak vytvořit Visual Basic 5.0 (nebo novější) ActiveX DLL komponenty, které rozšiřuje možnosti ASP číst binární data.

Část I: ASP vzorku, který otevře list aplikace Excel obsahující makra

   <%   Response.buffer = TRUE
Response.ContentType = "application/x-msexcel"

Dim vntStream

Set oMyObject = Server.CreateObject("MyObject.BinRead")
vntStream = oMyObject.readBinFile("c:\temp\tempxls.xls")

Response.BinaryWrite(vntStream)

Set oMyObject = Nothing

Response.End
%>


POZNÁMKA: soubory pro Acrobat změnit typ MIME pomocí Response.ContentType = "aplikace/pdf". U obrázku ve formátu GIF, použijte Response.ContentType = "image/gif".

Část II: Visual Basic 5.0 ActiveX DLL (MyObject.BinRead)

Chcete-li vytvořit komponentu, která provádí čtení binárního souboru, proveďte následující kroky:

  1. Vytvořte nový projekt ActiveX DLL v Visual Basic 5.0 nebo novější.
  2. Přejmenujte MyObject projektu.
  3. Přejmenujte modul třídy BinRead.
  4. Vyjmout a vložit následující kód do obecné deklarační sekci modulu třídy:

       Function readBinFile(ByVal bfilename As String) As Variant          Dim fl As Long
    Dim FileNum As Long
    Dim binbyte() As Byte
    Dim binfilestr As String

    On Error GoTo errHandler

    FileNum = FreeFile
    Open bfilename For Binary Access Read As #FileNum

    fl = FileLen(bfilename)
    ReDim binbyte(fl)

    Get #FileNum, , binbyte

    Close #FileNum

    readBinFile = binbyte
    Exit Function

    errHandler:
    Exit Function
    End Function

  5. Uložte projekt.
  6. V nabídce Soubor klepněte na tlačítko Vytvořit MyObject.dll.
Pokud webový server je v počítači samostatné odkud vytvořena součásti, je třeba zkopírovat součást na webový server a zaregistrujte jej použitím RegSvr32.


Zahrnout soubor vytvořený v části I do jiné stránky ASP, která obsahuje text nebo jiné formátování do serveru pomocí začlenění na straně výkazu.
Vlastnosti

ID článku: 193998 - Poslední kontrola: 12. 1. 2017 - Revize: 1

Váš názor