Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Base64 är otroligt slött!

Postades av 2004-07-12 21:56:17 - Bertil Rundquist, i forum visual basic - allmänt, Tråden har 8 Kommentarer och lästs av 861 personer

Jag har ett mail med en liten wav-fil bifogad, denna ska kodas med base64, detta funkar men om filen e lite stor så tar det ENORM tid, ska det verkligen göra det?

vore tacksam för svar.

/B


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-12 22:24:45 - Ola Lindfeldt

Ja det kan bli otroligt slött om du bygger upp en stor sträng på ett mindre bra sätt.

typ
str = str & "A"

osv


Posta din kod så kan jag ge förslag till bättre lösning :)

Ola


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-12 22:39:09 - Bertil Rundquist

' Decodes a base-64 encoded string (BSTR type).
' 1999 - 2004 Antonin Foller, http://www.pstruh.cz
' 1.01 - solves problem with Access And 'Compare Database' (InStr)
Function Base64Decode(ByVal base64String)
'rfc1521
'1999 Antonin Foller, PSTRUH Software, http://pstruh.cz
Const Base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
Dim dataLength, sOut, groupBegin

'remove white spaces, If any
base64String = Replace(base64String, vbCrLf, "")
base64String = Replace(base64String, vbTab, "")
base64String = Replace(base64String, " ", "")

'The source must consists from groups with Len of 4 chars
dataLength = Len(base64String)
If dataLength Mod 4 <> 0 Then
Err.Raise 1, "Base64Decode", "Bad Base64 string."
Exit Function
End If


' Now decode each group:
For groupBegin = 1 To dataLength Step 4
Dim numDataBytes, CharCounter, thisChar, thisData, nGroup, pOut
' Each data group encodes up To 3 actual bytes.
numDataBytes = 3
nGroup = 0

For CharCounter = 0 To 3
' Convert each character into 6 bits of data, And add it To
' an integer For temporary storage. If a character is a '=', there
' is one fewer data byte. (There can only be a maximum of 2 '=' In
' the whole string.)

thisChar = Mid(base64String, groupBegin + CharCounter, 1)

If thisChar = "=" Then
numDataBytes = numDataBytes - 1
thisData = 0
Else
thisData = InStr(1, Base64, thisChar, vbBinaryCompare) - 1
End If
If thisData = -1 Then
Err.Raise 2, "Base64Decode", "Bad character In Base64 string."
Exit Function
End If

nGroup = 64 * nGroup + thisData
Next

'Hex splits the long To 6 groups with 4 bits
nGroup = Hex(nGroup)

'Add leading zeros
nGroup = String(6 - Len(nGroup), "0") & nGroup

'Convert the 3 byte hex integer (6 chars) To 3 characters
pOut = Chr(CByte("&H" & Mid(nGroup, 1, 2))) + _
Chr(CByte("&H" & Mid(nGroup, 3, 2))) + _
Chr(CByte("&H" & Mid(nGroup, 5, 2)))

'add numDataBytes characters To out string
sOut = sOut & Left(pOut, numDataBytes)
Next

Base64Decode = sOut
End Function


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-13 12:55:21 - Ola Lindfeldt

Hej!


MSXML4 klarar detta, kan det vara något?

Du får göra om det lite i så fall..

se http://www.perfectxml.com/articles/xml/binary.asp

Ola


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-13 13:04:06 - Niklas Jansson

Det första du borde göra i den koden är att definiera alla typer. tro fan det blir segt om det är varianter allihop. Sämsta kod jag sett på länge!

Alltså:
Dim x as long, a as string

osv.
Orkar inte analysera vad alla grejer är för något.

Sen ska du ändra strängfunktionerna till t.ex. Mid$(...) istället för Mid(...).
Då lär du få se en hygglig höjning iaf.


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-13 15:36:09 - Bertil Rundquist

Hej, koden kom från nätet nånstans och var för VBS.

Jag ska testa detta och se hur det blir.

Tack så länge.

/B


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-13 16:44:02 - Bertil Rundquist

nää, denna kod är inte bra, filer över 50 kb så skiter det sig.

Är det nån som kan tipsa om vettigare VB-kod för decoding av Base64?


/B


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-14 01:11:30 - Ola Lindfeldt

Jag har inte testat denna men det ser bra ut..

http://www.xbeat.net/vbspeed/c_Base64Dec.htm

Ola


Svara

Sv: Base64 är otroligt slött!

Postades av 2004-07-15 12:37:26 - Bertil Rundquist

Jag har en VB-kod nu som kodar snabbt. Tack för er hjälp.


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 707
27 958
271 751
1 240
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies