2010-03-27 10 views
10

BitConverter.ToString प्रारूप में एक हेक्साडेसिमल देता है 'XX-XX-XX-XX'बिटकोनवर्टर के लिए विधि का विरोध करें। टॉस्ट्रिंग?

वहाँ इस के लिए एक विपरीत विधि ताकि मैं एक स्ट्रिंग से मूल बाइट सरणी प्राप्त कर सकते हैं इस प्रारूप के रूप में दी है?

उत्तर

13

नहीं है, लेकिन इसके लागू करना आसान:

string s = "66-6F-6F-62-61-72"; 
byte[] bytes = s.Split('-') 
    .Select(x => byte.Parse(x, NumberStyles.HexNumber)) 
    .ToArray(); 
2

स्ट्रिंग का उपयोग करें। स्प्लिट, फिर बाइट। लूप में पर्स सबसे आसान तरीका है। यदि आप जानते हैं कि प्रत्येक बाइट दो हेक्स अंकों के लिए गद्देदार है, तो आप स्ट्रिंग को छोड़कर हमेशा एक डैश हमेशा के बीच एक डैश कर सकते हैं। स्प्लिट और एक समय में केवल तीन वर्णों के माध्यम से आगे बढ़ना।