'-' को परिवर्तित किया जा रहा है? जेसन रीडर का उपयोग कर जेसन से पढ़ते समय

मैंने एक जेसन फ़ाइल पढ़ी जिसमें कुछ टेलीफोन नंबर शामिल हैं। कुछ इस तरह:     "संख्या": "416-736-5088"

मैं इसे JsonReader का उपयोग करके पार्स करता हूं और इसे एक सूची में सहेजता हूं।

private void populateOfficeList() throws IOException {
    officeList.clear();
    InputStream in = null;
    JsonReader jsonReader = null;
    try {
        in = openFileInput(OFFICE_JSON);    
        System.out.println("got in " + in);
        jsonReader = new JsonReader(new InputStreamReader(in, "UTF-8"));
        readofficeListMessageArray(jsonReader, officeList);
    } catch (FileNotFoundException e) {
       //TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        jsonReader.close();
        in.close();
    }

}

सब कुछ ठीक काम करता है। इसका पार्स किया गया और ठीक से बचाया गया। हालांकि जब मैं इन नंबरों को डिस्प्ले के लिए लाता हूं, तो वे इस तरह प्रदर्शित होते हैं:     416â €? 736â €? 5217

मैं रूपांतरण के लिए पहले ही यूटीएफ -8 का उपयोग कर रहा हूं। मैं इन पात्रों से कैसे छुटकारा पा सकता हूं?

0
हाँ धन्यवाद। यह मेरी समस्या हल हो गई। मेरे पास पहले से ही यूटीएफ -8 में एक फाइल सहेजी गई थी, लेकिन मैं इसे पहले आंतरिक मेमोरी में संग्रहीत कर रहा था और फिर इसे वहां से पढ़ रहा था। मैंने आंतरिक स्मृति में भी भंडारण करते समय यूटीएफ -8 का इस्तेमाल किया। यह हल हो गया।
जोड़ा लेखक CoderP, स्रोत
अगर मैंने आपके प्रश्न का सफलतापूर्वक उत्तर दिया है, तो क्या आप इसे समाधान के रूप में स्वीकार कर सकते हैं?
जोड़ा लेखक WOUNDEDStevenJones, स्रोत

1 उत्तर

चरित्र एन्कोडिंग की अद्भुत दुनिया में आपका स्वागत है। सुनिश्चित करें कि आप जो फ़ाइल पढ़ रहे हैं वह यूटीएफ -8 में भी सहेजी गई है।

1
जोड़ा