मार्शलर (javax.xml.bind.Marshaller
) लाइन विभाजक (कैरिज रिटर्न, नई लाइन, लाइन ब्रेक) को बदलने के लिए किस संपत्ति का उपयोग किया जाता है?जेएक्सबी मार्शलर लाइन विभाजक कैसे बदलें?
मेरा मानना है कि मार्शलर सिस्टम के लाइन विभाजक का उपयोग कर रहा है।
System.getProperty("line.separator")
हालांकि एक अलग एस्केप अनुक्रम की जरूरत है (अर्थात \r\n
\n
या ठीक इसके विपरीत बदलने की आवश्यकता)।
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.setProperty("line.separator", "\r\n");
क्या यह थोड़ा खतरनाक नहीं है? यदि कार्यान्वयन कभी भी बदलता है, तो यह "\ r \ n \ n" उत्पन्न करेगा। –
हम्म ... आप सही हैं! था मामले में, 'str = str.replaceAll ("\ r? \ N", "\ r \ n"); ' –