मैं एक पाठ फ़ाइल है कि इस तरह वास्तव में लग रहा है से जानकारी की एक लंबी लाइन पढ़ रहा हूँ करने के लिए विभाजन पढ़ें:एक पंक्ति का पाठ फ़ाइल, सरणी
Sebastien 5000\\Loic 5000\\Shubhashisshh 5000\\Thibaullt 5000\\Caroo 5000\\Blabla 5000\\Okayyy 5000\\SebCed 5000\\abusee 5000\\omg 5000\\
यह अपेक्षा की जाती है नाम के साथ उच्च स्कोर होने के लिए उपयोगकर्ताओं का जब मैं लाइन प्रिंट आउट, ऐसा लगता है यह होना चाहिए कि वास्तव में लग रहा है, लेकिन जब मैं split("\\\\")
उपयोग करने के बाद सरणी प्रिंट आउट, यह इस तरह दिखता है:
[Sebastien 5000, , Loic 5000, , Shubhashisshh 5000, , Thibaullt 5000, , Caroo 5000, , Blabla 5000, , Okayyy 5000, , SebCed 5000, , abusee 5000, , omg 5000]
समस्या यह है कि Array[0]
ठीक है पर Array[1]
खाली है , Array[3]
, Array[5]
, आदि
यहां मेरा कोड है। इसके साथ गलत क्या है?
BufferedReader in = null;
try {
in = new BufferedReader(new FileReader(path));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
String line = null;
try {
line = in.readLine();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("LINE = "+line);
String[] scores = line.split("\\\\");
System.out.println("Mode = "+mode+Arrays.toString(scores));
आप line.split ("\\\\") का उपयोग कर रहे ';' या है कि एक लेखन त्रुटि है? मुझे लगता है कि आपको 'लाइन चाहिए।विभाजन ("\\\"); ' – NickD
@ निकड यह एक रेगेक्स लेता है, इसलिए आपको' "\\\\" की आवश्यकता है जो पहले शाब्दिक स्ट्रिंग '' \\ '' और फिर एक शाब्दिक '' \ ''। '" \\\ "' संकलित नहीं है क्योंकि यह अनियमित स्ट्रिंग अक्षर है। – Esailija
यह एक टाइपो नहीं है, क्योंकि आपको एक विशेष char और दूसरी बार एक बार बचाना है क्योंकि अगर मैं विभाजन करना चाहता हूं तो यह एक स्ट्रिंग है \\\\ मैं नहीं? – user1895293