hadoop - How to strip host information from an hdfs path -
मेरे पास एक hdfs पथ hdfs: // host1: 8899 / path / to / file
है। मैं host1
को पट्टी करना चाहता हूं और प्रोग्राम को बंद करना चाहता हूं परिणामस्वरूप, यह hdfs: / path / tofile
होना चाहिए। क्या कोई सहायक विधि ऐसा कर सकती है?
"क्या कोई सहायक विधि ऐसा कर सकती है ? "
वास्तव में अपना स्वयं का बनाने के लिए वास्तव में बहुत कुछ नहीं लेता है बस मूल स्ट्रिंग कक्षा उपयोगिता कार्यों का उपयोग करें जैसे कि split ()
, indexOf ()
, substring ()
, आदि
ऐसा कुछ ऐसा होता है (जावा के साथ, हालांकि अधिकांश भाषाओं में उन विधियां हैं):
सार्वजनिक वर्ग टेस्टपाथ {सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग [] आर्ग्स) अपवाद फेंकता {स्ट्रिंग पथ = "hdfs : // स्थानीय होस्ट: 9000 / path / to / फ़ाइल "; Println (getPathWithoutHostAndPort (पथ)); } सार्वजनिक स्थिर स्ट्रिंग getPathWithoutHostAndPort (स्ट्रिंग पथ) {स्ट्रिंग [] सरणी = path.split ("(//)"); इंट इंडेक्सऑफ़फर्स्टस्लाश = सरणी [1]। इंडेक्सऑफ़ ("/"); स्ट्रिंगबिल्ल्डर बिल्डर = नया स्ट्रिंगबिल्डर (); । Builder.append (सरणी [0]) संलग्न (सरणी [1] .substring (indexOfFirstSlash)); रिटर्न बिल्डर.ट्रस्टिंग (); }}
परिणाम:
hdfs: / path / to / file
Comments
Post a Comment