2011-09-26 12 views
17

मैं एक हैडोप/एचबीज़ नौकरी लिख रहा हूं। मुझे जावा String को बाइट सरणी में बदलने की आवश्यकता थी। जावा के String.getBytes() और हैडोप के Bytes.toBytes() के बीच कोई अंतर है?String.getBytes() और Bytes.toBytes (स्ट्रिंग डेटा) के बीच अंतर

उत्तर

21

its documentation Bytes.toBytes() के अनुसार पैरामीटर को byte[] पर यूटीएफ -8 का उपयोग करके परिवर्तित करता है।

String.getBytes() (without arguments) प्लेटफ़ॉर्म डिफ़ॉल्ट एन्कोडिंग का उपयोग करके String से byte[] को परिवर्तित करेगा। वह एन्कोडिंग ओएस और उपयोगकर्ता सेटिंग्स के आधार पर भिन्न हो सकती है। उस विधि का उपयोग आम तौर पर टालना चाहिए।

आप String.getBytes(String) (या the Charset variant) को एन्कोडिंग निर्दिष्ट इस्तेमाल कर सकते हैं इस्तेमाल किया जा रहा।

8

जावाडोक पढ़ना, यह जाहिर होता है कि String.getBytes() की ओर से एक byte[] डिफ़ॉल्ट एन्कोडिंग और Bytes.toBytes (का प्रयोग करके) की ओर से एक byte[]UTF-8

का उपयोग कर यह वही बात हो सकती है, लेकिन यह नहीं हो सकता है ।

यदि आप कुछ जानना चाहते हैं तो जावाडोक को पढ़ने के लिए हमेशा उपयोगी होता है। ;)

संबंधित मुद्दे