Bayt dizisini int'e dönüştürme (C# Programlama Kılavuzu)
Bu örnek, bir bayt dizisini BitConverter int'e dönüştürmek ve bir bayt dizisine geri dönmek için sınıfını nasıl kullanacağınızı gösterir. Örneğin, ağdan baytları okuduktan sonra baytlardan yerleşik bir veri türüne dönüştürmeniz gerekebilir. Örnekteki ToInt32(Byte[], Int32) yöntemine ek olarak, aşağıdaki tabloda sınıfındaki BitConverter baytları (bayt dizisinden) diğer yerleşik türlere dönüştüren yöntemler listelenmiştir.
Döndürülen tür | Metot |
---|---|
bool |
ToBoolean(Byte[], Int32) |
char |
ToChar(Byte[], Int32) |
double |
ToDouble(Byte[], Int32) |
short |
ToInt16(Bayt[], Int32) |
int |
ToInt32(Bayt[], Int32) |
long |
ToInt64(Bayt[], Int32) |
float |
ToSingle(Byte[], Int32) |
ushort |
ToUInt16(Byte[], Int32) |
uint |
ToUInt32(Byte[], Int32) |
ulong |
ToUInt64(Byte[], Int32) |
Örnekler
Bu örnek bir bayt dizisi başlatır, bilgisayar mimarisi küçük endian ise diziyi tersine çevirir (yani, ilk olarak en az önemli bayt depolanır) ve ardından dizideki dört baytı öğesine int
dönüştürmek için ToInt32(Byte[], Int32) yöntemini çağırır. ToInt32(Byte[], Int32) için ikinci bağımsız değişken bayt dizisinin başlangıç dizinini belirtir.
Not
Çıkış, bilgisayarınızın mimarisinin son durumuna bağlı olarak farklılık gösterebilir.
byte[] bytes = [0, 0, 0, 25];
// If the system architecture is little-endian (that is, little end first),
// reverse the byte array.
if (BitConverter.IsLittleEndian)
Array.Reverse(bytes);
int i = BitConverter.ToInt32(bytes, 0);
Console.WriteLine("int: {0}", i);
// Output: int: 25
Bu örnekte, GetBytes(Int32) bir bayt dizisine dönüştürmek int
için sınıfının yöntemi BitConverter çağrılır.
Not
Çıkış, bilgisayarınızın mimarisinin son durumuna bağlı olarak farklılık gösterebilir.
byte[] bytes = BitConverter.GetBytes(201805978);
Console.WriteLine("byte array: " + BitConverter.ToString(bytes));
// Output: byte array: 9A-50-07-0C
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin