Hey,
Hab im großen weitem Internet eine in C# geschriebene Funktion gefunden, die ich gerne in VB.net übersetzten möchte.
Hab schon ein paar Online Converter benutzt, doch bei einer stelle versagen alle
C# Function
Spoiler anzeigen
Online Converter zu Vb.net
Spoiler anzeigen
Fehler (Der --Operator ist für die Typen "Char" und "Char" nicht definiert), tritt bei Zeile 30,33,36 auf.
mfg Azu
Hab im großen weitem Internet eine in C# geschriebene Funktion gefunden, die ich gerne in VB.net übersetzten möchte.
Hab schon ein paar Online Converter benutzt, doch bei einer stelle versagen alle
C# Function
C#-Quellcode
- private byte[] GetHexBytes(string source)
- {
- List<byte> bytes = new List<byte>();
- // copy s into ss, adding spaces between each byte
- string s = source;
- string ss = "";
- int currentbytelength = 0;
- foreach (char c in s.ToCharArray())
- {
- if (c == ' ')
- {
- currentbytelength = 0;
- }
- else
- {
- currentbytelength++;
- if (currentbytelength == 3)
- {
- currentbytelength = 1;
- ss += ' ';
- }
- }
- ss += c;
- }
- foreach (string b in ss.Split(' '))
- {
- int v = 0;
- if (b.Trim() == "") continue;
- foreach (char c in b.ToCharArray())
- {
- if (c >= '0' && c <= '9')
- {
- v *= 16;
- v += (c - '0');
- }
- else if (c >= 'a' && c <= 'f')
- {
- v *= 16;
- v += (c - 'a' + 10);
- }
- else if (c >= 'A' && c <= 'F')
- {
- v *= 16;
- v += (c - 'A' + 10);
- }
- }
- v &= 0xff;
- bytes.Add((byte)v);
- }
- return bytes.ToArray();
- }
Online Converter zu Vb.net
VB.NET-Quellcode
- Private Function GetHexBytes(source As String) As Byte()
- Dim bytes As New List(Of Byte)()
- ' copy s into ss, adding spaces between each byte
- Dim s As String = source
- Dim ss As String = ""
- Dim currentbytelength As Integer = 0
- For Each c As Char In s.ToCharArray()
- If c = " "c Then
- currentbytelength = 0
- Else
- currentbytelength += 1
- If currentbytelength = 3 Then
- currentbytelength = 1
- ss += " "c
- End If
- End If
- ss += c
- Next
- For Each b As String In ss.Split(" "c)
- Dim v As Integer = 0
- If b.Trim() = "" Then
- Continue For
- End If
- For Each c As Char In b.ToCharArray()
- If c >= "0"c AndAlso c <= "9"c Then
- v *= 16
- v += (c - "0"c)
- ElseIf c >= "a"c AndAlso c <= "f"c Then
- v *= 16
- v += (c - "a"c + 10)
- ElseIf c >= "A"c AndAlso c <= "F"c Then
- v *= 16
- v += (c - "A"c + 10)
- End If
- Next
- v = v And &HFF
- bytes.Add(CByte(v))
- Next
- Return bytes.ToArray()
- End Function
Fehler (Der --Operator ist für die Typen "Char" und "Char" nicht definiert), tritt bei Zeile 30,33,36 auf.
mfg Azu
_-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-_
MFG
_-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-_
MFG
_-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-__-_-_