Hej! Hej de va inte så jag menade, jag vill altså få om en jobbig variabel typ: Hej Jag vet inte om denna funktion fungerar på PocketPC. Men du kan ju prova: Ok ...denna gör om strängen till ett "behagligt" värde... Testa med: Behaglig och obehaglig , vilket är vilket ? Det är bara vissa tecken som är tillåtna i en URL för alla andra tecken skriver man %XX där XX är ascii värdet för tecknet.Enklare format...
Jag håller på att utveckla en app till en PocketPC, appen skall skicka en sträng via ett HTTP... problemet är bara att strängen är formaterad som Byte och jag kan inte skicka den strängen som en querystring.
Hur gör jag för att få om "massafulatecken" till t.ex "0010011001000010111000"
Jag har provar att hexa det men det blir inte bra på handdatorn eftersom den inte har kernel32 att jobba med....
någon?Sv: Enklare format...
Det bli kanske något skratt från mattesnillena ,men så här löste jag det.
Ditt exempel blir 626872
Option Explicit
Private Sub Command1_Click()
MsgBox BitConvert("0010011001000010111000")
End Sub
Private Function BitConvert(ByVal bitStr As String) As String
Dim i As Long, sLen As Long, tmpStr As String
Dim bitSum As Long
tmpStr = StrReverse(bitStr)
sLen = Len(tmpStr)
For i = 1 To sLen
If Mid$(tmpStr, i, 1) = "1" Then
bitSum = bitSum + 2 ^ i
End If
BitConvert = CStr(bitSum \ 2)
Next 'i
End Function
'/SvenSv: Enklare format...
variabel = "@£{€@[£€???{@]?[£$€?]@{$][[]£"
till något lättare...tex: "100100111111111110101010011"
så det kan skickas i en querystring
//jompaSv: Enklare format...
Om du skriver 10101100 osv så betyder det för mig bitvis.
vad skall det omvandlas till ?????????? Hex eller vad menar du ??????
Du har ju redan en Ascii sträng
förbryllad
/SvenSv: Enklare format...
<code>
Public Function URLEncode(ByVal Value As String) As String
Dim I As Long
Dim Char As Byte
Dim Data() As Byte
Data = StrConv(Value, vbFromUnicode)
For I = 0 To UBound(Data)
Char = Data(I)
Select Case Char
Case 48 To 57, 65 To 90, 97 To 122
URLEncode = URLEncode & Chr$(Char)
Case Else
URLEncode = URLEncode & "%" & Right("00" & Hex(Char), 2)
End Select
Next
End Function
</code>Sv: Enklare format...
men hur får jag tillbaka strängen till "obehagligt" värde igen?
// jompaSv: Enklare format...
<code>
Public Function URLDecode(ByVal Value As String) As String
Dim Index As Long
Dim strHex As String
URLDecode = Replace(Value, "+", " ")
Index = InStr(1, URLDecode, "%", vbBinaryCompare)
Do While Index
strHex = Mid(URLDecode, Index + 1, 2)
URLDecode = Replace(URLDecode, "%" & strHex, Chr("&H" & strHex))
Index = InStr(Index + 1, URLDecode, "%", vbBinaryCompare)
Loop
End Function
</code>Sv: Enklare format...
Jag tycker att din första är behaglig :-)
Nej förresten dom är obehagliga båda !
Allvar pratar Ni om Unicode ?
Undrar
/SvenSv: Enklare format...