VB.Net by API/System.Text/Encoding — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Версия 19:40, 26 мая 2010
Encoding.ASCII
<source lang="vbnet"> Imports System Imports System.IO Imports System.Security.Cryptography Imports System.Text Imports System.Runtime.Serialization.Formatters public class MainClass
Shared Public Sub Main(ByVal CmdArgs() As String) If (CmdArgs.Length <> 1) Then Console.WriteLine("usage: TestKeyHash <filename>") End End If Dim key() As Byte = Encoding.ASCII.GetBytes("My Secret Key".ToCharArray()) Dim hmac As HMACSHA1 = New HMACSHA1(key) Dim fs As FileStream = File.OpenRead(CmdArgs(0)) Dim hash() As Byte = hmac.ruputeHash(fs) Dim b64 As String = Convert.ToBase64String(hash) fs.Close() Console.WriteLine(b64) End Sub
End Class
</source>
Encoding.Default
<source lang="vbnet">
Imports System.Text Imports System.IO
Public Class Tester
Public Shared Sub Main Dim myFileStream As FileStream Dim myStreamReader As StreamReader Dim strRead As String = "" Dim StreamEncoding As Encoding Try StreamEncoding = Encoding.Default "StreamEncoding = Encoding.Unicode "StreamEncoding = Encoding.UTF8 "StreamEncoding = Encoding.UTF7 myFileStream = New FileStream("test.txt", FileMode.Open, FileAccess.Read) myStreamReader = New StreamReader(myFileStream, StreamEncoding) Console.WriteLine(myStreamReader.ReadToEnd) myFileStream.Close() myStreamReader.Close() Catch EX As IOException Console.WriteLine(EX.Message) End Try End Sub
End Class
</source>
Encoding.UTF32.GetString
<source lang="vbnet"> Public Class Tester
Public Shared Sub Main Dim quote As String = "qqqqqq" Dim result As New System.Text.StringBuilder Dim bytesUTF7 As Byte() = System.Text.Encoding.UTF7.GetBytes(quote) Dim bytesUTF8 As Byte() = System.Text.Encoding.UTF8.GetBytes(quote) Dim bytesUnicode As Byte() = System.Text.Encoding.Unicode.GetBytes(quote) Dim bytesUTF32 As Byte() = System.Text.Encoding.UTF32.GetBytes(quote) result.Append("bytesUTF7.Length = ") result.AppendLine(bytesUTF7.Length.ToString()) result.Append("bytesUTF8.Length = ") result.AppendLine(bytesUTF8.Length.ToString()) result.Append("bytesUnicode.Length = ") result.AppendLine(bytesUnicode.Length.ToString()) result.Append("bytesUTF32.Length = ") result.AppendLine(bytesUTF32.Length.ToString()) Dim fromUTF7 As String = System.Text.Encoding.UTF7.GetString(bytesUTF7) Dim fromUTF8 As String = System.Text.Encoding.UTF8.GetString(bytesUTF8) Dim fromUnicode As String = System.Text.Encoding.Unicode.GetString(bytesUnicode) Dim fromUTF32 As String = System.Text.Encoding.UTF32.GetString(bytesUTF32) If (fromUTF7 <> quote) Then _ Throw New Exception("UTF7 Conversion Error") If (fromUTF8 <> quote) Then _ Throw New Exception("UTF8 Conversion Error") If (fromUnicode <> quote) Then _ Throw New Exception("Unicode Conversion Error") If (fromUTF32 <> quote) Then _ Throw New Exception("UTF32 Conversion Error") Console.WriteLine(result.ToString()) End Sub
End Class
</source>
Encoding.UTF7.GetBytes
<source lang="vbnet"> Public Class Tester
Public Shared Sub Main Dim quote As String = "qqqqqq" Dim result As New System.Text.StringBuilder Dim bytesUTF7 As Byte() = System.Text.Encoding.UTF7.GetBytes(quote) Dim bytesUTF8 As Byte() = System.Text.Encoding.UTF8.GetBytes(quote) Dim bytesUnicode As Byte() = System.Text.Encoding.Unicode.GetBytes(quote) Dim bytesUTF32 As Byte() = System.Text.Encoding.UTF32.GetBytes(quote) result.Append("bytesUTF7.Length = ") result.AppendLine(bytesUTF7.Length.ToString()) result.Append("bytesUTF8.Length = ") result.AppendLine(bytesUTF8.Length.ToString()) result.Append("bytesUnicode.Length = ") result.AppendLine(bytesUnicode.Length.ToString()) result.Append("bytesUTF32.Length = ") result.AppendLine(bytesUTF32.Length.ToString()) Dim fromUTF7 As String = System.Text.Encoding.UTF7.GetString(bytesUTF7) Dim fromUTF8 As String = System.Text.Encoding.UTF8.GetString(bytesUTF8) Dim fromUnicode As String = System.Text.Encoding.Unicode.GetString(bytesUnicode) Dim fromUTF32 As String = System.Text.Encoding.UTF32.GetString(bytesUTF32) If (fromUTF7 <> quote) Then _ Throw New Exception("UTF7 Conversion Error") If (fromUTF8 <> quote) Then _ Throw New Exception("UTF8 Conversion Error") If (fromUnicode <> quote) Then _ Throw New Exception("Unicode Conversion Error") If (fromUTF32 <> quote) Then _ Throw New Exception("UTF32 Conversion Error") Console.WriteLine(result.ToString()) End Sub
End Class
</source>